Commit a6962d72 authored by Joe Perches's avatar Joe Perches Committed by Linus Torvalds

checkpatch: Prefer seq_puts to seq_printf

Add a check for seq_printf use with a constant format without additional
arguments.  Suggest seq_puts instead.
Signed-off-by: default avatarJoe Perches <joe@perches.com>
Suggested-by: default avatarBjorn Helgaas <bhelgaas@google.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 972fdea2
...@@ -628,6 +628,13 @@ sub sanitise_line { ...@@ -628,6 +628,13 @@ sub sanitise_line {
return $res; return $res;
} }
sub get_quoted_string {
my ($line, $rawline) = @_;
return "" if ($line !~ m/(\"[X]+\")/g);
return substr($rawline, $-[0], $+[0] - $-[0]);
}
sub ctx_statement_block { sub ctx_statement_block {
my ($linenr, $remain, $off) = @_; my ($linenr, $remain, $off) = @_;
my $line = $linenr - 1; my $line = $linenr - 1;
...@@ -3373,6 +3380,15 @@ sub process { ...@@ -3373,6 +3380,15 @@ sub process {
"struct spinlock should be spinlock_t\n" . $herecurr); "struct spinlock should be spinlock_t\n" . $herecurr);
} }
# check for seq_printf uses that could be seq_puts
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);
}
}
# Check for misused memsets # Check for misused memsets
if ($^V && $^V ge 5.10.0 && if ($^V && $^V ge 5.10.0 &&
defined $stat && defined $stat &&
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment