Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d5e616fc authored by Joe Perches's avatar Joe Perches Committed by Linus Torvalds
Browse files

checkpatch: add a few more --fix corrections



Suggest a few more single-line corrections.

Remove DOS line endings
Simplify removing trailing whitespace
Remove global/static initializations to 0/NULL
Convert pr_warning to pr_warn
Add space after brace
Convert binary constants to hex
Remove whitespace after line continuation
Use inline not __inline or __inline__
Use __printf and __scanf
Use a single ; for statement terminations
Convert __FUNCTION__ to __func__

Signed-off-by: default avatarJoe Perches <joe@perches.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 1431574a
Loading
Loading
Loading
Loading
+84 −38
Original line number Diff line number Diff line
@@ -1845,15 +1845,17 @@ sub process {
#trailing whitespace
		if ($line =~ /^\+.*\015/) {
			my $herevet = "$here\n" . cat_vet($rawline) . "\n";
			ERROR("DOS_LINE_ENDINGS",
			      "DOS line endings\n" . $herevet);

			if (ERROR("DOS_LINE_ENDINGS",
				  "DOS line endings\n" . $herevet) &&
			    $fix) {
				$fixed[$linenr - 1] =~ s/[\s\015]+$//;
			}
		} elsif ($rawline =~ /^\+.*\S\s+$/ || $rawline =~ /^\+\s+$/) {
			my $herevet = "$here\n" . cat_vet($rawline) . "\n";
			if (ERROR("TRAILING_WHITESPACE",
				  "trailing whitespace\n" . $herevet) &&
			    $fix) {
				$fixed[$linenr - 1] =~ s/^(\+.*?)\s+$/$1/;
				$fixed[$linenr - 1] =~ s/\s+$//;
			}

			$rpt_cleaners = 1;
@@ -2486,16 +2488,22 @@ sub process {
		}

# check for global initialisers.
		if ($line =~ /^.$Type\s*$Ident\s*(?:\s+$Modifier)*\s*=\s*(0|NULL|false)\s*;/) {
			ERROR("GLOBAL_INITIALISERS",
		if ($line =~ /^\+(\s*$Type\s*$Ident\s*(?:\s+$Modifier))*\s*=\s*(0|NULL|false)\s*;/) {
			if (ERROR("GLOBAL_INITIALISERS",
				  "do not initialise globals to 0 or NULL\n" .
				$herecurr);
				      $herecurr) &&
			    $fix) {
				$fixed[$linenr - 1] =~ s/($Type\s*$Ident\s*(?:\s+$Modifier))*\s*=\s*(0|NULL|false)\s*;/$1;/;
			}
		}
# check for static initialisers.
		if ($line =~ /\bstatic\s.*=\s*(0|NULL|false)\s*;/) {
			ERROR("INITIALISED_STATIC",
		if ($line =~ /^\+.*\bstatic\s.*=\s*(0|NULL|false)\s*;/) {
			if (ERROR("INITIALISED_STATIC",
				  "do not initialise statics to 0 or NULL\n" .
				$herecurr);
				      $herecurr) &&
			    $fix) {
				$fixed[$linenr - 1] =~ s/(\bstatic\s.*?)\s*=\s*(0|NULL|false)\s*;/$1;/;
			}
		}

# check for static const char * arrays.
@@ -2638,8 +2646,12 @@ sub process {
		}

		if ($line =~ /\bpr_warning\s*\(/) {
			WARN("PREFER_PR_LEVEL",
			     "Prefer pr_warn(... to pr_warning(...\n" . $herecurr);
			if (WARN("PREFER_PR_LEVEL",
				 "Prefer pr_warn(... to pr_warning(...\n" . $herecurr) &&
			    $fix) {
				$fixed[$linenr - 1] =~
				    s/\bpr_warning\b/pr_warn/;
			}
		}

		if ($line =~ /\bdev_printk\s*\(\s*KERN_([A-Z]+)/) {
@@ -3031,8 +3043,7 @@ sub process {
			if (ERROR("SPACING",
				  "space required before the open brace '{'\n" . $herecurr) &&
			    $fix) {
				$fixed[$linenr - 1] =~
				    s/^(\+.*(?:do|\))){/$1 {/;
				$fixed[$linenr - 1] =~ s/^(\+.*(?:do|\))){/$1 {/;
			}
		}

@@ -3047,8 +3058,12 @@ sub process {
# closing brace should have a space following it when it has anything
# on the line
		if ($line =~ /}(?!(?:,|;|\)))\S/) {
			ERROR("SPACING",
			      "space required after that close brace '}'\n" . $herecurr);
			if (ERROR("SPACING",
				  "space required after that close brace '}'\n" . $herecurr) &&
			    $fix) {
				$fixed[$linenr - 1] =~
				    s/}((?!(?:,|;|\)))\S)/} $1/;
			}
		}

# check spacing on square brackets
@@ -3271,8 +3286,13 @@ sub process {

#gcc binary extension
			if ($var =~ /^$Binary$/) {
				WARN("GCC_BINARY_CONSTANT",
				     "Avoid gcc v4.3+ binary constant extension: <$var>\n" . $herecurr);
				if (WARN("GCC_BINARY_CONSTANT",
					 "Avoid gcc v4.3+ binary constant extension: <$var>\n" . $herecurr) &&
				    $fix) {
					my $hexval = sprintf("0x%x", oct($var));
					$fixed[$linenr - 1] =~
					    s/\b$var\b/$hexval/;
				}
			}

#CamelCase
@@ -3292,9 +3312,12 @@ sub process {
		}

#no spaces allowed after \ in define
		if ($line=~/\#\s*define.*\\\s$/) {
			WARN("WHITESPACE_AFTER_LINE_CONTINUATION",
			     "Whitepspace after \\ makes next lines useless\n" . $herecurr);
		if ($line =~ /\#\s*define.*\\\s+$/) {
			if (WARN("WHITESPACE_AFTER_LINE_CONTINUATION",
				 "Whitespace after \\ makes next lines useless\n" . $herecurr) &&
			    $fix) {
				$fixed[$linenr - 1] =~ s/\s+$//;
			}
		}

#warn if <asm/foo.h> is #included and <linux/foo.h> is available (uses RAW line)
@@ -3691,8 +3714,12 @@ sub process {

# Check for __inline__ and __inline, prefer inline
		if ($line =~ /\b(__inline__|__inline)\b/) {
			WARN("INLINE",
			     "plain inline is preferred over $1\n" . $herecurr);
			if (WARN("INLINE",
				 "plain inline is preferred over $1\n" . $herecurr) &&
			    $fix) {
				$fixed[$linenr - 1] =~ s/\b(__inline__|__inline)\b/inline/;

			}
		}

# Check for __attribute__ packed, prefer __packed
@@ -3709,14 +3736,21 @@ sub process {

# Check for __attribute__ format(printf, prefer __printf
		if ($line =~ /\b__attribute__\s*\(\s*\(\s*format\s*\(\s*printf/) {
			WARN("PREFER_PRINTF",
			     "__printf(string-index, first-to-check) is preferred over __attribute__((format(printf, string-index, first-to-check)))\n" . $herecurr);
			if (WARN("PREFER_PRINTF",
				 "__printf(string-index, first-to-check) is preferred over __attribute__((format(printf, string-index, first-to-check)))\n" . $herecurr) &&
			    $fix) {
				$fixed[$linenr - 1] =~ s/\b__attribute__\s*\(\s*\(\s*format\s*\(\s*printf\s*,\s*(.*)\)\s*\)\s*\)/"__printf(" . trim($1) . ")"/ex;

			}
		}

# Check for __attribute__ format(scanf, prefer __scanf
		if ($line =~ /\b__attribute__\s*\(\s*\(\s*format\s*\(\s*scanf\b/) {
			WARN("PREFER_SCANF",
			     "__scanf(string-index, first-to-check) is preferred over __attribute__((format(scanf, string-index, first-to-check)))\n" . $herecurr);
			if (WARN("PREFER_SCANF",
				 "__scanf(string-index, first-to-check) is preferred over __attribute__((format(scanf, string-index, first-to-check)))\n" . $herecurr) &&
			    $fix) {
				$fixed[$linenr - 1] =~ s/\b__attribute__\s*\(\s*\(\s*format\s*\(\s*scanf\s*,\s*(.*)\)\s*\)\s*\)/"__scanf(" . trim($1) . ")"/ex;
			}
		}

# check for sizeof(&)
@@ -3727,8 +3761,11 @@ sub process {

# check for sizeof without parenthesis
		if ($line =~ /\bsizeof\s+((?:\*\s*|)$Lval|$Type(?:\s+$Lval|))/) {
			WARN("SIZEOF_PARENTHESIS",
			     "sizeof $1 should be sizeof($1)\n" . $herecurr);
			if (WARN("SIZEOF_PARENTHESIS",
				 "sizeof $1 should be sizeof($1)\n" . $herecurr) &&
			    $fix) {
				$fixed[$linenr - 1] =~ s/\bsizeof\s+((?:\*\s*|)$Lval|$Type(?:\s+$Lval|))/"sizeof(" . trim($1) . ")"/ex;
			}
		}

# check for line continuations in quoted strings with odd counts of "
@@ -3747,8 +3784,11 @@ sub process {
		if ($line =~ /\bseq_printf\s*\(/) {
			my $fmt = get_quoted_string($line, $rawline);
			if ($fmt !~ /[^\\]\%/) {
				WARN("PREFER_SEQ_PUTS",
				     "Prefer seq_puts to seq_printf\n" . $herecurr);
				if (WARN("PREFER_SEQ_PUTS",
					 "Prefer seq_puts to seq_printf\n" . $herecurr) &&
				    $fix) {
					$fixed[$linenr - 1] =~ s/\bseq_printf\b/seq_puts/;
				}
			}
		}

@@ -3879,8 +3919,11 @@ sub process {

# check for multiple semicolons
		if ($line =~ /;\s*;\s*$/) {
			WARN("ONE_SEMICOLON",
			     "Statements terminations use 1 semicolon\n" . $herecurr);
			if (WARN("ONE_SEMICOLON",
				 "Statements terminations use 1 semicolon\n" . $herecurr) &&
			    $fix) {
				$fixed[$linenr - 1] =~ s/(\s*;\s*){2,}$/;/g;
			}
		}

# check for switch/default statements without a break;
@@ -3898,9 +3941,12 @@ sub process {
		}

# check for gcc specific __FUNCTION__
		if ($line =~ /__FUNCTION__/) {
			WARN("USE_FUNC",
			     "__func__ should be used instead of gcc specific __FUNCTION__\n"  . $herecurr);
		if ($line =~ /\b__FUNCTION__\b/) {
			if (WARN("USE_FUNC",
				 "__func__ should be used instead of gcc specific __FUNCTION__\n"  . $herecurr) &&
			    $fix) {
				$fixed[$linenr - 1] =~ s/\b__FUNCTION__\b/__func__/g;
			}
		}

# check for use of yield()