From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 92940A00E6 for ; Wed, 10 Jul 2019 13:10:59 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 003F231FC; Wed, 10 Jul 2019 13:10:58 +0200 (CEST) Received: from smtp.tuxdriver.com (charlotte.tuxdriver.com [70.61.120.58]) by dpdk.org (Postfix) with ESMTP id A3B521C01; Wed, 10 Jul 2019 13:10:55 +0200 (CEST) Received: from cpe-2606-a000-111b-405a-0-0-0-162e.dyn6.twc.com ([2606:a000:111b:405a::162e] helo=localhost) by smtp.tuxdriver.com with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.63) (envelope-from ) id 1hlAUp-0005N8-UD; Wed, 10 Jul 2019 07:10:54 -0400 Date: Wed, 10 Jul 2019 07:10:20 -0400 From: Neil Horman To: Bing Zhao Cc: dev@dpdk.org, stable@dpdk.org Message-ID: <20190710111020.GA18006@hmswarspite.think-freely.org> References: <1562752634-311259-1-git-send-email-bingz@mellanox.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1562752634-311259-1-git-send-email-bingz@mellanox.com> User-Agent: Mutt/1.12.0 (2019-05-25) X-Spam-Score: -2.9 (--) X-Spam-Status: No Subject: Re: [dpdk-stable] [dpdk-dev] devtools: fix symbol change file matching X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" On Wed, Jul 10, 2019 at 05:57:14PM +0800, Bing Zhao wrote: > The previous regex miss a situation that a new file is added after > the map file. It will starts with '/dev/null' instead of 'a /', so > all the content in the patch file after 'map' will be considered in > the symbol map file. Also, a second regex matching is used for map > and other files, the '^map' in square brackets is not quite exact > the same with the design even if it works. > > Fixes: 4bec48184e33 ("devtools: add checks for ABI symbol addition") > Cc: nhorman@tuxdriver.com > > Signed-off-by: Bing Zhao > --- > devtools/check-symbol-change.sh | 21 +++++++++++++++++---- > 1 file changed, 17 insertions(+), 4 deletions(-) > > diff --git a/devtools/check-symbol-change.sh b/devtools/check-symbol-change.sh > index c5434f3..eac71f3 100755 > --- a/devtools/check-symbol-change.sh > +++ b/devtools/check-symbol-change.sh > @@ -11,19 +11,32 @@ build_map_changes() > # Initialize our variables > BEGIN {map="";sym="";ar="";sec=""; in_sec=0; in_map=0} > > - # Anything that starts with + or -, followed by an a > + # Anything that starts with + or -, followed by an a or b > # and ends in the string .map is the name of our map file > # This may appear multiple times in a patch if multiple > # 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} > > # Same pattern as above, only it matches on anything that > - # does not end in 'map', indicating we have left the map chunk. > + # 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} > + # Currently, using the same pattern for all the files matching, > + # and a second RE matching is used to distinguish map files from > + # other types of files > + /[-+] [ab]\/.*\.[[:alnum:]]+$/ { > + if ($2 ~ /\.map$/) { > + if (in_map == 0) {in_map = 1} > + } else { > + if (in_map == 1) {in_map = 0} > + } > + } > + > + # Indeed, this RE matching has no use. The only purpose here > + # is to remind that the git will have a third file pattern > + # "-+ /dev/null" besides "-a /" and "+b /" > + /[-+] \/dev\/null$/ {next} > > # Triggering this rule, which starts a line and ends it > # with a { identifies a versioned section. The section name is > -- > 1.8.3.1 > > Acked-by: Neil Horman