On Thu, Mar 19, 2020 at 8:14 PM Nithin Dabilpuram <ndabilpu...@marvell.com> wrote: > > 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>
Tested-by: Jerin Jacob <jer...@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 >