devtools: fix regex in symbol addition check
authorNeil Horman <nhorman@tuxdriver.com>
Thu, 1 Nov 2018 13:54:10 +0000 (09:54 -0400)
committerThomas Monjalon <thomas@monjalon.net>
Sun, 18 Nov 2018 22:38:26 +0000 (23:38 +0100)
The regex to determine the end of the map file chunk in a patch seems to
be wrong,  It was using perl regex syntax, which awk doesn't appear to
support (I'm still not sure how it was working previously).  Regardless,
it wasn't triggering and as a result symbols were getting added to the
mapdb that shouldn't be there.

Fix it by converting the regex to use traditional posix syntax, matching
only on the negation of the character class [^map]

Tested and shown to be working on the ip_frag patch set provided by
doucette@bu.edu

Fixes: 4bec48184e33 ("devtools: add checks for ABI symbol addition")
Cc: stable@dpdk.org
Reported-by: Cody Doucette <doucette@bu.edu>
Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
devtools/check-symbol-change.sh

index c0d2a6d..1d21e91 100755 (executable)
@@ -23,7 +23,7 @@ build_map_changes()
                # does not end in 'map', indicating we have left the map chunk.
                # When we hit this, turn off the in_map variable, which
                # supresses the subordonate rules below
-               /[-+] a\/.*\.^(map)/ {in_map=0}
+               /[-+] a\/.*\.[^map]/ {in_map=0}
 
                # Triggering this rule, which starts a line and ends it
                # with a { identifies a versioned section.  The section name is
@@ -153,7 +153,6 @@ clean_and_exit_on_sig()
 build_map_changes "$patch" "$mapfile"
 check_for_rule_violations "$mapfile"
 exit_code=$?
-
 rm -f "$mapfile"
 
 exit $exit_code