mirror of https://lore.kernel.org/lkml/
 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; 5+ 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	[flat|nested] 5+ 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; 5+ 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] 5+ 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; 5+ 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] 5+ 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; 5+ 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	[flat|nested] 5+ messages in thread

* Re: [PATCH] checkpatch: Improve the unnecessary initialisers tests
       [not found] <EA.EB.04973.33AE6365@epcpsbgx4.samsung.com>
@ 2015-11-03  3:01 ` Joe Perches
  0 siblings, 0 replies; 5+ messages in thread
From: Joe Perches @ 2015-11-03  3:01 UTC (permalink / raw)
  To: shailendra.v; +Cc: Andy Whitcroft, Andrew Morton, linux-kernel

On Mon, 2015-11-02 at 04:44 +0000, Shailendra Verma wrote:
> Hello Joe,
> Its looks good. I have tested the patch and it is working for all
> concerned error messages.
> 
> Thanks for your co-ordination and support.

Hi again Shailendra.

Remember when you send email to LKML to use
non-html formatted emails.

cheers, Joe


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

end of thread, other threads:[~2015-11-03  3:02 UTC | newest]

Thread overview: 5+ 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
     [not found] <EA.EB.04973.33AE6365@epcpsbgx4.samsung.com>
2015-11-03  3:01 ` Joe Perches

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®