Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751501AbdLAVoZ (ORCPT ); Fri, 1 Dec 2017 16:44:25 -0500 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:38900 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750898AbdLAVoX (ORCPT ); Fri, 1 Dec 2017 16:44:23 -0500 Date: Fri, 1 Dec 2017 13:44:16 -0800 From: "Paul E. McKenney" To: Joe Perches Cc: linux-kernel@vger.kernel.org, mingo@kernel.org, jiangshanlai@gmail.com, dipankar@in.ibm.com, akpm@linux-foundation.org, mathieu.desnoyers@efficios.com, josh@joshtriplett.org, tglx@linutronix.de, peterz@infradead.org, rostedt@goodmis.org, dhowells@redhat.com, edumazet@google.com, fweisbec@gmail.com, oleg@redhat.com, Andy Whitcroft Subject: Re: [PATCH tip/core/rcu 20/21] checkpatch: Add warnings for {smp_,}read_barrier_depends() Reply-To: paulmck@linux.vnet.ibm.com References: <20171201195053.GA23494@linux.vnet.ibm.com> <1512157876-24665-20-git-send-email-paulmck@linux.vnet.ibm.com> <1512159257.19952.167.camel@perches.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1512159257.19952.167.camel@perches.com> User-Agent: Mutt/1.5.21 (2010-09-15) X-TM-AS-GCONF: 00 x-cbid: 17120121-0052-0000-0000-0000028AF502 X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00008138; HX=3.00000241; KW=3.00000007; PH=3.00000004; SC=3.00000243; SDB=6.00954037; UDB=6.00482107; IPR=6.00734112; BA=6.00005726; NDR=6.00000001; ZLA=6.00000005; ZF=6.00000009; ZB=6.00000000; ZP=6.00000000; ZH=6.00000000; ZU=6.00000002; MB=3.00018295; XFM=3.00000015; UTC=2017-12-01 21:44:20 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 17120121-0053-0000-0000-000052C9EBA4 Message-Id: <20171201214416.GJ7829@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2017-12-01_06:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1709140000 definitions=main-1712010259 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2336 Lines: 67 On Fri, Dec 01, 2017 at 12:14:17PM -0800, Joe Perches wrote: > On Fri, 2017-12-01 at 11:51 -0800, Paul E. McKenney wrote: > > Now that both smp_read_barrier_depends() and read_barrier_depends() > > are being de-emphasized, warn if any are added. > > This would also warn on existing files when run > with ./scripts/checkpatch.pl -f > > Do you want it to check new patches only? > > If so the test could become "if (!$file && etc...) > > > diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl > > index 95cda3ecc66b..25f7098e2ad3 100755 > > --- a/scripts/checkpatch.pl > > +++ b/scripts/checkpatch.pl > > @@ -5586,6 +5586,12 @@ sub process { > > } > > } > > > > +# check for smp_read_barrier_depends and read_barrier_depends > > + if ($line =~ /\b(smp_|)read_barrier_depends\(/) { > > Must become > > + if ($line =~ /\b(smp_|)read_barrier_depends\s*\(/) { > > similar to the lines above this as there are sometimes > spaces between function name and argument parentheses. Good points! Like this? Thanx, Paul ------------------------------------------------------------------------ commit ff155ce179aab891dbe2ca80f82a453383fd165a Author: Paul E. McKenney Date: Mon Nov 27 09:37:35 2017 -0800 checkpatch: Add warnings for {smp_,}read_barrier_depends() Now that both smp_read_barrier_depends() and read_barrier_depends() are being de-emphasized, warn if any are added. Signed-off-by: Paul E. McKenney Cc: Andy Whitcroft Cc: Joe Perches [ paulmck: Skipped checking files and handled whitespace per Joe Perches. ] diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index 95cda3ecc66b..0d90518d4147 100755 --- a/scripts/checkpatch.pl +++ b/scripts/checkpatch.pl @@ -5586,6 +5586,12 @@ sub process { } } +# check for smp_read_barrier_depends and read_barrier_depends + if (!$file && $line =~ /\b(smp_|)read_barrier_depends\s*\(/) { + WARN("READ_BARRIER_DEPENDS", + "Dependency barriers should only be used in READ_ONCE or DEC Alpha code" . $herecurr); + } + # check of hardware specific defines if ($line =~ m@^.\s*\#\s*if.*\b(__i386__|__powerpc64__|__sun__|__s390x__)\b@ && $realfile !~ m@include/asm-@) { CHK("ARCH_DEFINES",