Fix check symbol change script to detect new diff file when it is in between "--- /dev/null" to "b/lib/...". Current awk line expects line to start with "a/..." which is not always true for all diffs. As a result if in_map was '1' earlier, it will not be changed to '0' and we get check patch errors which are not true as the non version.map files get interpreted as version map file.
Fixes: 4bec48184e33 ("devtools: add checks for ABI symbol addition") Cc: nhor...@tuxdriver.com Cc: sta...@dpdk.org Signed-off-by: Nithin Dabilpuram <ndabilpu...@marvell.com> --- Note: We have two examples where checkpatch errors are because of this because the version.map file change comes earlier in the diff. Because of this bug, any new file change that comes after version.map file diff as "/dev/null" to "b/.." gets misdetected as version.map file. * http://patches.dpdk.org/patch/66878/ * https://patchwork.dpdk.org/patch/66900/ devtools/check-symbol-change.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/devtools/check-symbol-change.sh b/devtools/check-symbol-change.sh index c5434f3..19ce82f 100755 --- a/devtools/check-symbol-change.sh +++ b/devtools/check-symbol-change.sh @@ -17,13 +17,13 @@ build_map_changes() # map files are altered, and all section/symbol names # appearing between a triggering of this rule and the # next trigger of this rule are associated with this file - /[-+] a\/.*\.map/ {map=$2; in_map=1} + /[-+] [ab]\/.*\.map/ {map=$2; in_map=1} # Same pattern as above, only it matches on anything that # 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} + /[-+] [ab]\/.*\.[^map]/ {in_map=0} # Triggering this rule, which starts a line and ends it # with a { identifies a versioned section. The section name is -- 2.8.4