On Mon, Mar 23, 2020 at 09:13:22AM +0100, David Marchand wrote: > External Email > > ---------------------------------------------------------------------- > On Thu, Mar 19, 2020 at 3:44 PM Nithin Dabilpuram > <ndabilpu...@marvell.com> wrote: > > 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} > > [^map] does not mean "not word map" but actually "none of the > character m, a or p". > > So potentially, any file extension starting with m, a or p could > trigger an issue. > For example, a change in .mk files, .py files and > ./devtools/check-forbidden-tokens.awk ./devtools/libabigail.abignore > could lead to incorrect symbol check. > > How about the following change: > > diff --git a/devtools/check-symbol-change.sh b/devtools/check-symbol-change.sh > index c5434f3bb0..ed2178e36e 100755 > --- a/devtools/check-symbol-change.sh > +++ b/devtools/check-symbol-change.sh > @@ -17,13 +17,11 @@ 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; next} > > - # 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} > + # The previous rule catches all .map files, anything else > + # indicates we left the map chunk. > + /[-+] [ab]\// {in_map=0} > > # Triggering this rule, which starts a line and ends it > # with a { identifies a versioned section. The section name > is > >
Agreed. I tested and it works fine for me. I can send a V2 with this change if it is fine. > -- > David Marchand >