checkpatch: fix duplicate invalid vsprintf pointer extension '%p<foo>' messages
Multiline statements with invalid %p<foo> uses produce multiple warnings. Fix that. e.g.: $ cat t_block.c void foo(void) { MY_DEBUG(drv->foo, "%pk", foo->boo); } $ ./scripts/checkpatch.pl -f t_block.c WARNING: Missing or malformed SPDX-License-Identifier tag in line 1 #1: FILE: t_block.c:1: +void foo(void) WARNING: Invalid vsprintf pointer extension '%pk' #3: FILE: t_block.c:3: + MY_DEBUG(drv->foo, + "%pk", + foo->boo); WARNING: Invalid vsprintf pointer extension '%pk' #3: FILE: t_block.c:3: + MY_DEBUG(drv->foo, + "%pk", + foo->boo); total: 0 errors, 3 warnings, 6 lines checked NOTE: For some of the reported defects, checkpatch may be able to mechanically convert to the typical style using --fix or --fix-inplace. t_block.c has style problems, please review. NOTE: If any of the errors are false positives, please report them to the maintainer, see CHECKPATCH in MAINTAINERS. Link: http://lkml.kernel.org/r/9e8341bbe4c9877d159cb512bb701043cbfbb10b.camel@perches.com Signed-off-by: Joe Perches <joe@perches.com> Cc: "Tobin C. Harding" <me@tobin.cc> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Родитель
bb177a732c
Коммит
ffe075132a
|
@ -5813,14 +5813,14 @@ sub process {
|
||||||
defined $stat &&
|
defined $stat &&
|
||||||
$stat =~ /^\+(?![^\{]*\{\s*).*\b(\w+)\s*\(.*$String\s*,/s &&
|
$stat =~ /^\+(?![^\{]*\{\s*).*\b(\w+)\s*\(.*$String\s*,/s &&
|
||||||
$1 !~ /^_*volatile_*$/) {
|
$1 !~ /^_*volatile_*$/) {
|
||||||
my $specifier;
|
|
||||||
my $extension;
|
|
||||||
my $bad_specifier = "";
|
|
||||||
my $stat_real;
|
my $stat_real;
|
||||||
|
|
||||||
my $lc = $stat =~ tr@\n@@;
|
my $lc = $stat =~ tr@\n@@;
|
||||||
$lc = $lc + $linenr;
|
$lc = $lc + $linenr;
|
||||||
for (my $count = $linenr; $count <= $lc; $count++) {
|
for (my $count = $linenr; $count <= $lc; $count++) {
|
||||||
|
my $specifier;
|
||||||
|
my $extension;
|
||||||
|
my $bad_specifier = "";
|
||||||
my $fmt = get_quoted_string($lines[$count - 1], raw_line($count, 0));
|
my $fmt = get_quoted_string($lines[$count - 1], raw_line($count, 0));
|
||||||
$fmt =~ s/%%//g;
|
$fmt =~ s/%%//g;
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче