linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] scripts:checkpatch - correct the error message during check
       [not found] <no@samsung.com>
@ 2015-10-30 11:25 ` shailendra.v
  2015-10-30 12:56   ` Andy Whitcroft
  0 siblings, 1 reply; 8+ messages in thread
From: shailendra.v @ 2015-10-30 11:25 UTC (permalink / raw)
  To: Andy Whitcroft, Joe Perches; +Cc: linux-kernel

From: Shailendra Verma <shailendra.v@samsung.com>

Signed-off-by: Shailendra Verma <shailendra.v@samsung.com>
---
 scripts/checkpatch.pl | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index c5ec977..b2436d3 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -3169,21 +3169,21 @@ sub process {
 		}
 
 # check for global initialisers.
-		if ($line =~ /^\+$Type\s*$Ident(?:\s+$Modifier)*\s*=\s*(?:0|NULL|false)\s*;/) {
+		if ($line =~ /^\+$Type\s*$Ident(?:\s+$Modifier)*\s*=\s*(0x0|0|NULL|false)\s*;/) {
 			if (ERROR("GLOBAL_INITIALISERS",
-				  "do not initialise globals to 0 or NULL\n" .
+				  "do not initialise globals to $1\n" .
 				      $herecurr) &&
 			    $fix) {
-				$fixed[$fixlinenr] =~ s/(^.$Type\s*$Ident(?:\s+$Modifier)*)\s*=\s*(0|NULL|false)\s*;/$1;/;
+				$fixed[$fixlinenr] =~ s/(^.$Type\s*$Ident(?:\s+$Modifier)*)\s*=\s*(0x0|0|NULL|false)\s*;/$1;/;
 			}
 		}
 # check for static initialisers.
-		if ($line =~ /^\+.*\bstatic\s.*=\s*(0|NULL|false)\s*;/) {
+		if ($line =~ /^\+.*\bstatic\s.*=\s*(0x0|0|NULL|false)\s*;/) {
 			if (ERROR("INITIALISED_STATIC",
-				  "do not initialise statics to 0 or NULL\n" .
+				  "do not initialise statics to $1\n" .
 				      $herecurr) &&
 			    $fix) {
-				$fixed[$fixlinenr] =~ s/(\bstatic\s.*?)\s*=\s*(0|NULL|false)\s*;/$1;/;
+				$fixed[$fixlinenr] =~ s/(\bstatic\s.*?)\s*=\s*(0x0|0|NULL|false)\s*;/$1;/;
 			}
 		}
 
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH] scripts:checkpatch - correct the error message during check
  2015-10-30 11:25 ` [PATCH] scripts:checkpatch - correct the error message during check shailendra.v
@ 2015-10-30 12:56   ` Andy Whitcroft
  2015-10-30 15:29     ` Joe Perches
  2015-10-30 19:05     ` [PATCH] checkpatch: Improve the unnecessary initialisers tests Joe Perches
  0 siblings, 2 replies; 8+ messages in thread
From: Andy Whitcroft @ 2015-10-30 12:56 UTC (permalink / raw)
  To: shailendra.v; +Cc: Joe Perches, linux-kernel

On Fri, Oct 30, 2015 at 04:55:04PM +0530, shailendra.v@samsung.com wrote:
> From: Shailendra Verma <shailendra.v@samsung.com>
> 
> Signed-off-by: Shailendra Verma <shailendra.v@samsung.com>
> ---
>  scripts/checkpatch.pl | 12 ++++++------
>  1 file changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> index c5ec977..b2436d3 100755
> --- a/scripts/checkpatch.pl
> +++ b/scripts/checkpatch.pl
> @@ -3169,21 +3169,21 @@ sub process {
>  		}
>  
>  # check for global initialisers.
> -		if ($line =~ /^\+$Type\s*$Ident(?:\s+$Modifier)*\s*=\s*(?:0|NULL|false)\s*;/) {
> +		if ($line =~ /^\+$Type\s*$Ident(?:\s+$Modifier)*\s*=\s*(0x0|0|NULL|false)\s*;/) {
>  			if (ERROR("GLOBAL_INITIALISERS",
> -				  "do not initialise globals to 0 or NULL\n" .
> +				  "do not initialise globals to $1\n" .
>  				      $herecurr) &&
>  			    $fix) {
> -				$fixed[$fixlinenr] =~ s/(^.$Type\s*$Ident(?:\s+$Modifier)*)\s*=\s*(0|NULL|false)\s*;/$1;/;
> +				$fixed[$fixlinenr] =~ s/(^.$Type\s*$Ident(?:\s+$Modifier)*)\s*=\s*(0x0|0|NULL|false)\s*;/$1;/;
>  			}
>  		}
>  # check for static initialisers.
> -		if ($line =~ /^\+.*\bstatic\s.*=\s*(0|NULL|false)\s*;/) {
> +		if ($line =~ /^\+.*\bstatic\s.*=\s*(0x0|0|NULL|false)\s*;/) {
>  			if (ERROR("INITIALISED_STATIC",
> -				  "do not initialise statics to 0 or NULL\n" .
> +				  "do not initialise statics to $1\n" .
>  				      $herecurr) &&
>  			    $fix) {
> -				$fixed[$fixlinenr] =~ s/(\bstatic\s.*?)\s*=\s*(0|NULL|false)\s*;/$1;/;
> +				$fixed[$fixlinenr] =~ s/(\bstatic\s.*?)\s*=\s*(0x0|0|NULL|false)\s*;/$1;/;
>  			}
>  		}

I guess that looks ok.  Joe you don't know of anyone relying on the form
of the error do you (I do not)?

-apw

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] scripts:checkpatch - correct the error message during check
  2015-10-30 12:56   ` Andy Whitcroft
@ 2015-10-30 15:29     ` Joe Perches
  2015-10-30 19:05     ` [PATCH] checkpatch: Improve the unnecessary initialisers tests Joe Perches
  1 sibling, 0 replies; 8+ messages in thread
From: Joe Perches @ 2015-10-30 15:29 UTC (permalink / raw)
  To: Andy Whitcroft; +Cc: shailendra.v, linux-kernel

On Fri, 2015-10-30 at 12:56 +0000, Andy Whitcroft wrote:
> On Fri, Oct 30, 2015 at 04:55:04PM +0530, shailendra.v@samsung.com wrote:
> > From: Shailendra Verma <shailendra.v@samsung.com>
[]
> > diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
[]
> > @@ -3169,21 +3169,21 @@ sub process {
> >  		}
> >  
> >  # check for global initialisers.
> > -		if ($line =~ /^\+$Type\s*$Ident(?:\s+$Modifier)*\s*=\s*(?:0|NULL|false)\s*;/) {
> > +		if ($line =~ /^\+$Type\s*$Ident(?:\s+$Modifier)*\s*=\s*(0x0|0|NULL|false)\s*;/) {
> >  			if (ERROR("GLOBAL_INITIALISERS",
> > -				  "do not initialise globals to 0 or NULL\n" .
> > +				  "do not initialise globals to $1\n" .
> >  				      $herecurr) &&
> >  			    $fix) {
> > -				$fixed[$fixlinenr] =~ s/(^.$Type\s*$Ident(?:\s+$Modifier)*)\s*=\s*(0|NULL|false)\s*;/$1;/;
> > +				$fixed[$fixlinenr] =~ s/(^.$Type\s*$Ident(?:\s+$Modifier)*)\s*=\s*(0x0|0|NULL|false)\s*;/$1;/;
> >  			}
> >  		}
> >  # check for static initialisers.
> > -		if ($line =~ /^\+.*\bstatic\s.*=\s*(0|NULL|false)\s*;/) {
> > +		if ($line =~ /^\+.*\bstatic\s.*=\s*(0x0|0|NULL|false)\s*;/) {
> >  			if (ERROR("INITIALISED_STATIC",
> > -				  "do not initialise statics to 0 or NULL\n" .
> > +				  "do not initialise statics to $1\n" .
> >  				      $herecurr) &&
> >  			    $fix) {
> > -				$fixed[$fixlinenr] =~ s/(\bstatic\s.*?)\s*=\s*(0|NULL|false)\s*;/$1;/;
> > +				$fixed[$fixlinenr] =~ s/(\bstatic\s.*?)\s*=\s*(0x0|0|NULL|false)\s*;/$1;/;
> >  			}
> >  		}
> 
> I guess that looks ok.  Joe you don't know of anyone relying on the form
> of the error do you (I do not)?

I do not.

If these are changed, perhaps making the tests
	"((?:0[xX]|)0+$Int_type?|NULL|false)"
might catch a couple more of these;




^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH] checkpatch: Improve the unnecessary initialisers tests
  2015-10-30 12:56   ` Andy Whitcroft
  2015-10-30 15:29     ` Joe Perches
@ 2015-10-30 19:05     ` Joe Perches
  1 sibling, 0 replies; 8+ messages in thread
From: Joe Perches @ 2015-10-30 19:05 UTC (permalink / raw)
  To: Andy Whitcroft, Andrew Morton; +Cc: shailendra.v, linux-kernel

Global and static variables don't need to be initialized to 0.

There is already a test for this but the output message doesn't
mention booleans initialized to false.

Improve the output message and the test by adding various forms
with possible specific integer types and possible multiple zeros.

Miscellanea:

o Use a variable to hold the possible 0 test

Signed-off-by: Shailendra Verma <shailendra.v@samsung.com>
Signed-off-by: Joe Perches <joe@perches.com>
---
 scripts/checkpatch.pl | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 2d88cbf9..2b3c228 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -370,6 +370,8 @@ our $typeTypedefs = qr{(?x:
 	$typeKernelTypedefs\b
 )};
 
+our $zero_initializer = qr{(?:(?:0[xX])?0+$Int_type?|NULL|false)\b};
+
 our $logFunctions = qr{(?x:
 	printk(?:_ratelimited|_once|)|
 	(?:[a-z0-9]+_){1,2}(?:printk|emerg|alert|crit|err|warning|warn|notice|info|debug|dbg|vdbg|devel|cont|WARN)(?:_ratelimited|_once|)|
@@ -3334,21 +3336,20 @@ sub process {
 		}
 
 # check for global initialisers.
-		if ($line =~ /^\+$Type\s*$Ident(?:\s+$Modifier)*\s*=\s*(?:0|NULL|false)\s*;/) {
+		if ($line =~ /^\+$Type\s*$Ident(?:\s+$Modifier)*\s*=\s*($zero_initializer)\s*;/) {
 			if (ERROR("GLOBAL_INITIALISERS",
-				  "do not initialise globals to 0 or NULL\n" .
-				      $herecurr) &&
+				  "do not initialise globals to $1\n" . $herecurr) &&
 			    $fix) {
-				$fixed[$fixlinenr] =~ s/(^.$Type\s*$Ident(?:\s+$Modifier)*)\s*=\s*(0|NULL|false)\s*;/$1;/;
+				$fixed[$fixlinenr] =~ s/(^.$Type\s*$Ident(?:\s+$Modifier)*)\s*=\s*$zero_initializer\s*;/$1;/;
 			}
 		}
 # check for static initialisers.
-		if ($line =~ /^\+.*\bstatic\s.*=\s*(0|NULL|false)\s*;/) {
+		if ($line =~ /^\+.*\bstatic\s.*=\s*($zero_initializer)\s*;/) {
 			if (ERROR("INITIALISED_STATIC",
-				  "do not initialise statics to 0 or NULL\n" .
+				  "do not initialise statics to $1\n" .
 				      $herecurr) &&
 			    $fix) {
-				$fixed[$fixlinenr] =~ s/(\bstatic\s.*?)\s*=\s*(0|NULL|false)\s*;/$1;/;
+				$fixed[$fixlinenr] =~ s/(\bstatic\s.*?)\s*=\s*$zero_initializer\s*;/$1;/;
 			}
 		}
 



^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH] scripts:checkpatch - correct the error message during check
@ 2015-06-05 17:10 Shailendra Verma
  0 siblings, 0 replies; 8+ messages in thread
From: Shailendra Verma @ 2015-06-05 17:10 UTC (permalink / raw)
  To: Andy Whitcroft, Joe Perches; +Cc: linux-kernel, Shailendra Verma

Signed-off-by: Shailendra Verma <shailendra.capricorn@gmail.com>
---
 scripts/checkpatch.pl | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index c5ec977..b2436d3 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -3169,21 +3169,21 @@ sub process {
 		}
 
 # check for global initialisers.
-		if ($line =~ /^\+$Type\s*$Ident(?:\s+$Modifier)*\s*=\s*(?:0|NULL|false)\s*;/) {
+		if ($line =~ /^\+$Type\s*$Ident(?:\s+$Modifier)*\s*=\s*(0x0|0|NULL|false)\s*;/) {
 			if (ERROR("GLOBAL_INITIALISERS",
-				  "do not initialise globals to 0 or NULL\n" .
+				  "do not initialise globals to $1\n" .
 				      $herecurr) &&
 			    $fix) {
-				$fixed[$fixlinenr] =~ s/(^.$Type\s*$Ident(?:\s+$Modifier)*)\s*=\s*(0|NULL|false)\s*;/$1;/;
+				$fixed[$fixlinenr] =~ s/(^.$Type\s*$Ident(?:\s+$Modifier)*)\s*=\s*(0x0|0|NULL|false)\s*;/$1;/;
 			}
 		}
 # check for static initialisers.
-		if ($line =~ /^\+.*\bstatic\s.*=\s*(0|NULL|false)\s*;/) {
+		if ($line =~ /^\+.*\bstatic\s.*=\s*(0x0|0|NULL|false)\s*;/) {
 			if (ERROR("INITIALISED_STATIC",
-				  "do not initialise statics to 0 or NULL\n" .
+				  "do not initialise statics to $1\n" .
 				      $herecurr) &&
 			    $fix) {
-				$fixed[$fixlinenr] =~ s/(\bstatic\s.*?)\s*=\s*(0|NULL|false)\s*;/$1;/;
+				$fixed[$fixlinenr] =~ s/(\bstatic\s.*?)\s*=\s*(0x0|0|NULL|false)\s*;/$1;/;
 			}
 		}
 
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH] scripts:checkpatch - correct the error message during check
       [not found]   ` <CA+tKcn9Mc-s=bD3KPQ=E=+yB=Sgx65yi6EUE_Qe7OiC4JCzEJg@mail.gmail.com>
@ 2015-06-05 15:40     ` Joe Perches
  0 siblings, 0 replies; 8+ messages in thread
From: Joe Perches @ 2015-06-05 15:40 UTC (permalink / raw)
  To: Shailendra Verma; +Cc: Andy Whitcroft, linux-kernel

On Fri, 2015-06-05 at 21:01 +0530, Shailendra Verma wrote:
> Sorry i could not understand the point as i am not very good in Perl.

Is anyone very good at perl?

> Are you saying that we need to change ?
> > -                               "do not initialise globals to 0 or NULL\n" .
> > +                               "do not initialise globals to s/$2/$1/\n"

"do not initialise globals to $1\n"



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] scripts:checkpatch - correct the error message during check
  2015-06-05 13:55 Shailendra Verma
@ 2015-06-05 15:15 ` Joe Perches
       [not found]   ` <CA+tKcn9Mc-s=bD3KPQ=E=+yB=Sgx65yi6EUE_Qe7OiC4JCzEJg@mail.gmail.com>
  0 siblings, 1 reply; 8+ messages in thread
From: Joe Perches @ 2015-06-05 15:15 UTC (permalink / raw)
  To: Shailendra Verma; +Cc: Andy Whitcroft, linux-kernel

On Fri, 2015-06-05 at 19:25 +0530, Shailendra Verma wrote:
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
[]
> @@ -3169,21 +3169,21 @@ sub process {
>  		}
>  
>  # check for global initialisers.
> -		if ($line =~ /^\+$Type\s*$Ident(?:\s+$Modifier)*\s*=\s*(?:0|NULL|false)\s*;/) {
> +		if ($line =~ /^\+$Type\s*$Ident(?:\s+$Modifier)*\s*=\s*(?:0x0|0|NULL|false)\s*;/) {
>  			if (ERROR("GLOBAL_INITIALISERS",
> -				  "do not initialise globals to 0 or NULL\n" .
> +				  "do not initialise globals to $2\n" .

The first capture group in the old and broken regex
was unnecessary and was removed so s/$2/$1/



^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH] scripts:checkpatch - correct the error message during check
@ 2015-06-05 13:55 Shailendra Verma
  2015-06-05 15:15 ` Joe Perches
  0 siblings, 1 reply; 8+ messages in thread
From: Shailendra Verma @ 2015-06-05 13:55 UTC (permalink / raw)
  To: Andy Whitcroft, Joe Perches; +Cc: linux-kernel, Shailendra Verma

Signed-off-by: Shailendra Verma <shailendra.capricorn@gmail.com>
---
 scripts/checkpatch.pl | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index c5ec977..b59f356 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -3169,21 +3169,21 @@ sub process {
 		}
 
 # check for global initialisers.
-		if ($line =~ /^\+$Type\s*$Ident(?:\s+$Modifier)*\s*=\s*(?:0|NULL|false)\s*;/) {
+		if ($line =~ /^\+$Type\s*$Ident(?:\s+$Modifier)*\s*=\s*(?:0x0|0|NULL|false)\s*;/) {
 			if (ERROR("GLOBAL_INITIALISERS",
-				  "do not initialise globals to 0 or NULL\n" .
+				  "do not initialise globals to $2\n" .
 				      $herecurr) &&
 			    $fix) {
-				$fixed[$fixlinenr] =~ s/(^.$Type\s*$Ident(?:\s+$Modifier)*)\s*=\s*(0|NULL|false)\s*;/$1;/;
+				$fixed[$fixlinenr] =~ s/(^.$Type\s*$Ident(?:\s+$Modifier)*)\s*=\s*(0x0|0|NULL|false)\s*;/$1;/;
 			}
 		}
 # check for static initialisers.
-		if ($line =~ /^\+.*\bstatic\s.*=\s*(0|NULL|false)\s*;/) {
+		if ($line =~ /^\+.*\bstatic\s.*=\s*(0x0|0|NULL|false)\s*;/) {
 			if (ERROR("INITIALISED_STATIC",
-				  "do not initialise statics to 0 or NULL\n" .
+				  "do not initialise statics to $1\n" .
 				      $herecurr) &&
 			    $fix) {
-				$fixed[$fixlinenr] =~ s/(\bstatic\s.*?)\s*=\s*(0|NULL|false)\s*;/$1;/;
+				$fixed[$fixlinenr] =~ s/(\bstatic\s.*?)\s*=\s*(0x0|0|NULL|false)\s*;/$1;/;
 			}
 		}
 
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2015-10-30 19:05 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <no@samsung.com>
2015-10-30 11:25 ` [PATCH] scripts:checkpatch - correct the error message during check shailendra.v
2015-10-30 12:56   ` Andy Whitcroft
2015-10-30 15:29     ` Joe Perches
2015-10-30 19:05     ` [PATCH] checkpatch: Improve the unnecessary initialisers tests Joe Perches
2015-06-05 17:10 [PATCH] scripts:checkpatch - correct the error message during check Shailendra Verma
  -- strict thread matches above, loose matches on Subject: below --
2015-06-05 13:55 Shailendra Verma
2015-06-05 15:15 ` Joe Perches
     [not found]   ` <CA+tKcn9Mc-s=bD3KPQ=E=+yB=Sgx65yi6EUE_Qe7OiC4JCzEJg@mail.gmail.com>
2015-06-05 15:40     ` Joe Perches

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).