[dpdk-dev] [PATCH] check-symbol-change: fix regex to match on end of map file

Thomas Monjalon thomas at monjalon.net
Sun Nov 18 23:25:21 CET 2018


02/11/2018 12:50, Neil Horman:
> On Thu, Nov 01, 2018 at 11:53:00PM +0100, Thomas Monjalon wrote:
> > 01/11/2018 14:54, Neil Horman:
> > > 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 at bu.edu
> > > 
> > > Signed-off-by: Neil Horman <nhorman at tuxdriver.com>
> > > CC: thomas at monjalon.net
> > > CC: doucette at bu.edu
> > > Reported-by: doucette at bu.edu
> > 
> > You could use these lines:
> > 
> > Fixes: 4bec48184e33 ("devtools: add checks for ABI symbol addition")
> > 
> > Reported-by: Cody Doucette <doucette at bu.edu>
> > 
> I'm fine with the second line, and the first is fine I guess, but I'm not sure
> there is an exact correlation
> 
> > > --- a/devtools/check-symbol-change.sh
> > > +++ b/devtools/check-symbol-change.sh
> > > -		/[-+] a\/.*\.^(map)/ {in_map=0}
> > > +		/[-+] a\/.*\.[^map]/ {in_map=0}
> > 
> > Not sure this is what you intend:
> > [^map] means any character except "m", "a" and "p".
> > 
> Its not 100%, but its pretty close.  The regex for exact matching on not a
> specific string is pretty large and complex.  Since we have no files that that
> end in .m .a or .p, this should give us what we want for the forseeable future.
> 
> > I don't know whether awk supports this syntax: (?!foo)
> > 
> It unfortunately doesn't, thats perl syntax, and while grep I think supports it,
> awk is more strictly posix compliant.

I understand now.

Applied, thanks





More information about the dev mailing list