diff mbox

[U-Boot] checkpatch.pl: Fix checkpatch.pl warnings with Perl 5.22

Message ID 1441308335-13518-1-git-send-email-moritz.fischer@ettus.com
State Deferred
Delegated to: Tom Rini
Headers show

Commit Message

Moritz Fischer Sept. 3, 2015, 7:25 p.m. UTC
This patch fixes a bunch of deprecation warings that show up when using
checkpatch.pl with Perl 5.22.

Unescaped left brace in regex is deprecated, passed through in regex;
marked by <-- HERE in m/\#\s*define.*do\s{ <-- HERE / at
./scripts/checkpatch.pl line 2829.

Unescaped left brace in regex is deprecated, passed through in regex;
marked by <-- HERE in m/\(.*\){ <-- HERE / at
./scripts/checkpatch.pl line 3262.

Unescaped left brace in regex is deprecated, passed through in regex;
marked by <-- HERE in m/do{ <-- HERE / at
./scripts/checkpatch.pl line 3263.

Unescaped left brace in regex is deprecated, passed through in regex;
marked by <-- HERE in m/^\({ <-- HERE / at
./scripts/checkpatch.pl line 3636.

Unescaped left brace in regex is deprecated, passed through in regex;
marked by <-- HERE in m/(?^x:

Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
---
 scripts/checkpatch.pl | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

Comments

Joe Perches Sept. 3, 2015, 7:32 p.m. UTC | #1
On Thu, 2015-09-03 at 12:25 -0700, Moritz Fischer wrote:
> This patch fixes a bunch of deprecation warings that show up when using
> checkpatch.pl with Perl 5.22.

Thanks.

I believe these are all fixed in linux-next and
should be resolved when v4.3 is released.

commit 09165246126819ca19b47103d28392364bb599f1
Author: Eddie Kovsky <ewk@edkovsky.org>
Date:   Tue Aug 25 14:21:30 2015 +1000
Joe Hershberger Sept. 3, 2015, 8:46 p.m. UTC | #2
Hi Moritz,

On Thu, Sep 3, 2015 at 2:25 PM, Moritz Fischer <moritz.fischer@ettus.com> wrote:
> This patch fixes a bunch of deprecation warings that show up when using
> checkpatch.pl with Perl 5.22.
>
> Unescaped left brace in regex is deprecated, passed through in regex;
> marked by <-- HERE in m/\#\s*define.*do\s{ <-- HERE / at
> ./scripts/checkpatch.pl line 2829.
>
> Unescaped left brace in regex is deprecated, passed through in regex;
> marked by <-- HERE in m/\(.*\){ <-- HERE / at
> ./scripts/checkpatch.pl line 3262.
>
> Unescaped left brace in regex is deprecated, passed through in regex;
> marked by <-- HERE in m/do{ <-- HERE / at
> ./scripts/checkpatch.pl line 3263.
>
> Unescaped left brace in regex is deprecated, passed through in regex;
> marked by <-- HERE in m/^\({ <-- HERE / at
> ./scripts/checkpatch.pl line 3636.
>
> Unescaped left brace in regex is deprecated, passed through in regex;
> marked by <-- HERE in m/(?^x:
>
> Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>

Please submit this and have it accepted in the Linux tree. We will
then pull it in here once it is accepted there.

Thanks,
-Joe
Alexey Brodkin Nov. 30, 2015, 10:23 a.m. UTC | #3
Hi Joe,

On Thu, 2015-09-03 at 15:46 -0500, Joe Hershberger wrote:
> Hi Moritz,
> 
> On Thu, Sep 3, 2015 at 2:25 PM, Moritz Fischer <moritz.fischer@ettus.com> wrote:
> > This patch fixes a bunch of deprecation warings that show up when using
> > checkpatch.pl with Perl 5.22.
> > 
> > Unescaped left brace in regex is deprecated, passed through in regex;
> > marked by <-- HERE in m/\#\s*define.*do\s{ <-- HERE / at
> > ./scripts/checkpatch.pl line 2829.
> > 
> > Unescaped left brace in regex is deprecated, passed through in regex;
> > marked by <-- HERE in m/\(.*\){ <-- HERE / at
> > ./scripts/checkpatch.pl line 3262.
> > 
> > Unescaped left brace in regex is deprecated, passed through in regex;
> > marked by <-- HERE in m/do{ <-- HERE / at
> > ./scripts/checkpatch.pl line 3263.
> > 
> > Unescaped left brace in regex is deprecated, passed through in regex;
> > marked by <-- HERE in m/^\({ <-- HERE / at
> > ./scripts/checkpatch.pl line 3636.
> > 
> > Unescaped left brace in regex is deprecated, passed through in regex;
> > marked by <-- HERE in m/(?^x:
> > 
> > Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
> 
> Please submit this and have it accepted in the Linux tree. We will
> then pull it in here once it is accepted there.

Similar fix is already in Linus' master tree, see
http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=4e5d56bdf892e18832a6540b63ebf709966bce2a

Also note:
 [1] That commit from Linux tree won't apply cleanly on U-Boot
     due to a bit different context.
 [2] Even if manually tweaked it looks like it is incomplete:
     ------------------->8-------------------
     )\(.*\).*\s{ <-- HERE / at scripts/checkpatch.pl line 2828.
     ------------------->8-------------------

So with above in mind could you please apply that patch posted by
Moritz?

This fixes checkpatch in Fedora 23 - in current state it is way too noisy.

-Alexey
Tom Rini Nov. 30, 2015, 3:56 p.m. UTC | #4
On Mon, Nov 30, 2015 at 10:23:20AM +0000, Alexey Brodkin wrote:
> Hi Joe,
> 
> On Thu, 2015-09-03 at 15:46 -0500, Joe Hershberger wrote:
> > Hi Moritz,
> > 
> > On Thu, Sep 3, 2015 at 2:25 PM, Moritz Fischer <moritz.fischer@ettus.com> wrote:
> > > This patch fixes a bunch of deprecation warings that show up when using
> > > checkpatch.pl with Perl 5.22.
> > > 
> > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > marked by <-- HERE in m/\#\s*define.*do\s{ <-- HERE / at
> > > ./scripts/checkpatch.pl line 2829.
> > > 
> > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > marked by <-- HERE in m/\(.*\){ <-- HERE / at
> > > ./scripts/checkpatch.pl line 3262.
> > > 
> > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > marked by <-- HERE in m/do{ <-- HERE / at
> > > ./scripts/checkpatch.pl line 3263.
> > > 
> > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > marked by <-- HERE in m/^\({ <-- HERE / at
> > > ./scripts/checkpatch.pl line 3636.
> > > 
> > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > marked by <-- HERE in m/(?^x:
> > > 
> > > Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
> > 
> > Please submit this and have it accepted in the Linux tree. We will
> > then pull it in here once it is accepted there.
> 
> Similar fix is already in Linus' master tree, see
> http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=4e5d56bdf892e18832a6540b63ebf709966bce2a
> 
> Also note:
>  [1] That commit from Linux tree won't apply cleanly on U-Boot
>      due to a bit different context.
>  [2] Even if manually tweaked it looks like it is incomplete:
>      ------------------->8-------------------
>      )\(.*\).*\s{ <-- HERE / at scripts/checkpatch.pl line 2828.
>      ------------------->8-------------------
> 
> So with above in mind could you please apply that patch posted by
> Moritz?
> 
> This fixes checkpatch in Fedora 23 - in current state it is way too noisy.

Maybe we just need to re-sync again?
Alexey Brodkin Nov. 30, 2015, 3:57 p.m. UTC | #5
Hi Tom,

On Mon, 2015-11-30 at 10:56 -0500, Tom Rini wrote:
> On Mon, Nov 30, 2015 at 10:23:20AM +0000, Alexey Brodkin wrote:
> > Hi Joe,
> > 
> > On Thu, 2015-09-03 at 15:46 -0500, Joe Hershberger wrote:
> > > Hi Moritz,
> > > 
> > > On Thu, Sep 3, 2015 at 2:25 PM, Moritz Fischer <moritz.fischer@ettus.com> wrote:
> > > > This patch fixes a bunch of deprecation warings that show up when using
> > > > checkpatch.pl with Perl 5.22.
> > > > 
> > > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > > marked by <-- HERE in m/\#\s*define.*do\s{ <-- HERE / at
> > > > ./scripts/checkpatch.pl line 2829.
> > > > 
> > > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > > marked by <-- HERE in m/\(.*\){ <-- HERE / at
> > > > ./scripts/checkpatch.pl line 3262.
> > > > 
> > > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > > marked by <-- HERE in m/do{ <-- HERE / at
> > > > ./scripts/checkpatch.pl line 3263.
> > > > 
> > > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > > marked by <-- HERE in m/^\({ <-- HERE / at
> > > > ./scripts/checkpatch.pl line 3636.
> > > > 
> > > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > > marked by <-- HERE in m/(?^x:
> > > > 
> > > > Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
> > > 
> > > Please submit this and have it accepted in the Linux tree. We will
> > > then pull it in here once it is accepted there.
> > 
> > Similar fix is already in Linus' master tree, see
> > http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=4e5d56bdf892e18832a6540b63ebf709966bce2a
> > 
> > Also note:
> >  [1] That commit from Linux tree won't apply cleanly on U-Boot
> >      due to a bit different context.
> >  [2] Even if manually tweaked it looks like it is incomplete:
> >      ------------------->8-------------------
> >      )\(.*\).*\s{ <-- HERE / at scripts/checkpatch.pl line 2828.
> >      ------------------->8-------------------
> > 
> > So with above in mind could you please apply that patch posted by
> > Moritz?
> > 
> > This fixes checkpatch in Fedora 23 - in current state it is way too noisy.
> 
> Maybe we just need to re-sync again?
> 

Do you mean to copy entire checkpatch.pl over from Linux to U-Boot?

-Alexey
Tom Rini Nov. 30, 2015, 4:02 p.m. UTC | #6
On Mon, Nov 30, 2015 at 03:57:12PM +0000, Alexey Brodkin wrote:
> Hi Tom,
> 
> On Mon, 2015-11-30 at 10:56 -0500, Tom Rini wrote:
> > On Mon, Nov 30, 2015 at 10:23:20AM +0000, Alexey Brodkin wrote:
> > > Hi Joe,
> > > 
> > > On Thu, 2015-09-03 at 15:46 -0500, Joe Hershberger wrote:
> > > > Hi Moritz,
> > > > 
> > > > On Thu, Sep 3, 2015 at 2:25 PM, Moritz Fischer <moritz.fischer@ettus.com> wrote:
> > > > > This patch fixes a bunch of deprecation warings that show up when using
> > > > > checkpatch.pl with Perl 5.22.
> > > > > 
> > > > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > > > marked by <-- HERE in m/\#\s*define.*do\s{ <-- HERE / at
> > > > > ./scripts/checkpatch.pl line 2829.
> > > > > 
> > > > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > > > marked by <-- HERE in m/\(.*\){ <-- HERE / at
> > > > > ./scripts/checkpatch.pl line 3262.
> > > > > 
> > > > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > > > marked by <-- HERE in m/do{ <-- HERE / at
> > > > > ./scripts/checkpatch.pl line 3263.
> > > > > 
> > > > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > > > marked by <-- HERE in m/^\({ <-- HERE / at
> > > > > ./scripts/checkpatch.pl line 3636.
> > > > > 
> > > > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > > > marked by <-- HERE in m/(?^x:
> > > > > 
> > > > > Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
> > > > 
> > > > Please submit this and have it accepted in the Linux tree. We will
> > > > then pull it in here once it is accepted there.
> > > 
> > > Similar fix is already in Linus' master tree, see
> > > http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=4e5d56bdf892e18832a6540b63ebf709966bce2a
> > > 
> > > Also note:
> > >  [1] That commit from Linux tree won't apply cleanly on U-Boot
> > >      due to a bit different context.
> > >  [2] Even if manually tweaked it looks like it is incomplete:
> > >      ------------------->8-------------------
> > >      )\(.*\).*\s{ <-- HERE / at scripts/checkpatch.pl line 2828.
> > >      ------------------->8-------------------
> > > 
> > > So with above in mind could you please apply that patch posted by
> > > Moritz?
> > > 
> > > This fixes checkpatch in Fedora 23 - in current state it is way too noisy.
> > 
> > Maybe we just need to re-sync again?
> > 
> 
> Do you mean to copy entire checkpatch.pl over from Linux to U-Boot?

Not quite blindly, we have an intentional change or two (I _think_ the
change for __packed detection / warning was rejected upstream, memory is
hazy) but by and large yes, it's just an import from the kernel anyhow.
Alexey Brodkin Nov. 30, 2015, 4:05 p.m. UTC | #7
Hi Tom,

On Mon, 2015-11-30 at 11:02 -0500, Tom Rini wrote:
> On Mon, Nov 30, 2015 at 03:57:12PM +0000, Alexey Brodkin wrote:
> > Hi Tom,
> > 
> > On Mon, 2015-11-30 at 10:56 -0500, Tom Rini wrote:
> > > On Mon, Nov 30, 2015 at 10:23:20AM +0000, Alexey Brodkin wrote:
> > > > Hi Joe,
> > > > 
> > > > On Thu, 2015-09-03 at 15:46 -0500, Joe Hershberger wrote:
> > > > > Hi Moritz,
> > > > > 
> > > > > On Thu, Sep 3, 2015 at 2:25 PM, Moritz Fischer <moritz.fischer@ettus.com> wrote:
> > > > > > This patch fixes a bunch of deprecation warings that show up when using
> > > > > > checkpatch.pl with Perl 5.22.
> > > > > > 
> > > > > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > > > > marked by <-- HERE in m/\#\s*define.*do\s{ <-- HERE / at
> > > > > > ./scripts/checkpatch.pl line 2829.
> > > > > > 
> > > > > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > > > > marked by <-- HERE in m/\(.*\){ <-- HERE / at
> > > > > > ./scripts/checkpatch.pl line 3262.
> > > > > > 
> > > > > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > > > > marked by <-- HERE in m/do{ <-- HERE / at
> > > > > > ./scripts/checkpatch.pl line 3263.
> > > > > > 
> > > > > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > > > > marked by <-- HERE in m/^\({ <-- HERE / at
> > > > > > ./scripts/checkpatch.pl line 3636.
> > > > > > 
> > > > > > Unescaped left brace in regex is deprecated, passed through in regex;
> > > > > > marked by <-- HERE in m/(?^x:
> > > > > > 
> > > > > > Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
> > > > > 
> > > > > Please submit this and have it accepted in the Linux tree. We will
> > > > > then pull it in here once it is accepted there.
> > > > 
> > > > Similar fix is already in Linus' master tree, see
> > > > http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=4e5d56bdf892e18832a6540b63ebf709966bce
> > > > 2a
> > > > 
> > > > Also note:
> > > >  [1] That commit from Linux tree won't apply cleanly on U-Boot
> > > >      due to a bit different context.
> > > >  [2] Even if manually tweaked it looks like it is incomplete:
> > > >      ------------------->8-------------------
> > > >      )\(.*\).*\s{ <-- HERE / at scripts/checkpatch.pl line 2828.
> > > >      ------------------->8-------------------
> > > > 
> > > > So with above in mind could you please apply that patch posted by
> > > > Moritz?
> > > > 
> > > > This fixes checkpatch in Fedora 23 - in current state it is way too noisy.
> > > 
> > > Maybe we just need to re-sync again?
> > > 
> > 
> > Do you mean to copy entire checkpatch.pl over from Linux to U-Boot?
> 
> Not quite blindly, we have an intentional change or two (I _think_ the
> change for __packed detection / warning was rejected upstream, memory is
> hazy) but by and large yes, it's just an import from the kernel anyhow.
> 

I'm fine with that but not sure if I may do it myself - at least I havent's tried it :)
Volunteers?

-Alexey
Joe Perches Nov. 30, 2015, 4:06 p.m. UTC | #8
On Mon, 2015-11-30 at 10:56 -0500, Tom Rini wrote:
> On Mon, Nov 30, 2015 at 10:23:20AM +0000, Alexey Brodkin wrote:
[]
> > Similar fix is already in Linus' master tree, see
> > http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/comm
> > it/?id=4e5d56bdf892e18832a6540b63ebf709966bce2a
> > 
> > Also note:
> >  [1] That commit from Linux tree won't apply cleanly on U-Boot
> >      due to a bit different context.
> >  [2] Even if manually tweaked it looks like it is incomplete:
> >      ------------------->8-------------------
> >      )\(.*\).*\s{ <-- HERE / at scripts/checkpatch.pl line 2828.
> >      ------------------->8-------------------
> > 
> > So with above in mind could you please apply that patch posted by
> > Moritz?
> > 
> > This fixes checkpatch in Fedora 23 - in current state it is way too
> > noisy.
> 
> Maybe we just need to re-sync again?

I don't track u-boot.

Are there any u-boot specific changes made to checkpatch
that are inappropriate for the linux-kernel?

If there aren't, maybe whatever u-boot changes that have
been made to checkpatch should be pulled into the kernel
version.
Tom Rini Nov. 30, 2015, 4:37 p.m. UTC | #9
On Mon, Nov 30, 2015 at 08:06:45AM -0800, Joe Perches wrote:
> On Mon, 2015-11-30 at 10:56 -0500, Tom Rini wrote:
> > On Mon, Nov 30, 2015 at 10:23:20AM +0000, Alexey Brodkin wrote:
> []
> > > Similar fix is already in Linus' master tree, see
> > > http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/comm
> > > it/?id=4e5d56bdf892e18832a6540b63ebf709966bce2a
> > > 
> > > Also note:
> > >  [1] That commit from Linux tree won't apply cleanly on U-Boot
> > >      due to a bit different context.
> > >  [2] Even if manually tweaked it looks like it is incomplete:
> > >      ------------------->8-------------------
> > >      )\(.*\).*\s{ <-- HERE / at scripts/checkpatch.pl line 2828.
> > >      ------------------->8-------------------
> > > 
> > > So with above in mind could you please apply that patch posted by
> > > Moritz?
> > > 
> > > This fixes checkpatch in Fedora 23 - in current state it is way too
> > > noisy.
> > 
> > Maybe we just need to re-sync again?
> 
> I don't track u-boot.
> 
> Are there any u-boot specific changes made to checkpatch
> that are inappropriate for the linux-kernel?
> 
> If there aren't, maybe whatever u-boot changes that have
> been made to checkpatch should be pulled into the kernel
> version.

My memory is hazy, sorry, so I dug this up:
https://lkml.org/lkml/2014/2/24/542 and then re-read most of it.  I had
a newer version of the __packed check that I didn't post (I'm pretty
sure) since the general feedback seemed to be that it wasn't wanted for
the kernel.  Other than that (and some other tiny things that are easy
to fixup) no, we don't have local changes.
diff mbox

Patch

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 74db2e2..3a6b9fa 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -2825,8 +2825,8 @@  sub process {
 
 # function brace can't be on same line, except for #defines of do while,
 # or if closed on same line
-		if (($line=~/$Type\s*$Ident\(.*\).*\s{/) and
-		    !($line=~/\#\s*define.*do\s{/) and !($line=~/}/)) {
+		if (($line=~/$Type\s*$Ident\(.*\).*\s\{/) and
+		    !($line=~/\#\s*define.*do\s\{/) and !($line=~/\}/)) {
 			ERROR("OPEN_BRACE",
 			      "open brace '{' following function declarations go on the next line\n" . $herecurr);
 		}
@@ -3259,12 +3259,12 @@  sub process {
 ## 		}
 
 #need space before brace following if, while, etc
-		if (($line =~ /\(.*\){/ && $line !~ /\($Type\){/) ||
-		    $line =~ /do{/) {
+		if (($line =~ /\(.*\)\{/ && $line !~ /\($Type\)\{/) ||
+		    $line =~ /do\{/) {
 			if (ERROR("SPACING",
 				  "space required before the open brace '{'\n" . $herecurr) &&
 			    $fix) {
-				$fixed[$linenr - 1] =~ s/^(\+.*(?:do|\))){/$1 {/;
+				$fixed[$linenr - 1] =~ s/^(\+.*(?:do|\)))\{/$1 {/;
 			}
 		}
 
@@ -3633,7 +3633,7 @@  sub process {
 			    $dstat !~ /^for\s*$Constant$/ &&				# for (...)
 			    $dstat !~ /^for\s*$Constant\s+(?:$Ident|-?$Constant)$/ &&	# for (...) bar()
 			    $dstat !~ /^do\s*{/ &&					# do {...
-			    $dstat !~ /^\({/ &&						# ({...
+			    $dstat !~ /^\(\{/ &&						# ({...
 			    $ctx !~ /^.\s*#\s*define\s+TRACE_(?:SYSTEM|INCLUDE_FILE|INCLUDE_PATH)\b/)
 			{
 				$ctx =~ s/\n*$//;