[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <39f687f7c71b162eb8caefbec939fa2ad74fcdfc.camel@perches.com>
Date: Fri, 25 Nov 2022 12:17:05 -0800
From: Joe Perches <joe@...ches.com>
To: Thomas Weißschuh <linux@...ssschuh.net>,
"Rafael J. Wysocki" <rafael@...nel.org>,
Pavel Machek <pavel@....cz>, Len Brown <len.brown@...el.com>,
linux-pm@...r.kernel.org, Petr Mladek <pmladek@...e.com>,
Sergey Senozhatsky <senozhatsky@...omium.org>,
Andy Whitcroft <apw@...onical.com>
Cc: linux-kernel@...r.kernel.org, Steven Rostedt <rostedt@...dmis.org>,
Dwaipayan Ray <dwaipayanray1@...il.com>,
Lukas Bulwahn <lukas.bulwahn@...il.com>
Subject: Re: [PATCH v2 2/3] checkpatch: handle new pr_<level>_cont macros
On Fri, 2022-11-25 at 20:09 +0100, Thomas Weißschuh wrote:
> These new macros from include/linux/printk.h replace the usage of plain
> pr_cont().
[]
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> index 1e5e66ae5a52..fb1747639c9c 100755
> --- a/scripts/checkpatch.pl
> +++ b/scripts/checkpatch.pl
> @@ -590,7 +590,7 @@ our $zero_initializer = qr{(?:(?:0[xX])?0+$Int_type?|NULL|false)\b};
>
> our $logFunctions = qr{(?x:
> printk(?:_ratelimited|_once|_deferred_once|_deferred|)|
> - (?:[a-z0-9]+_){1,2}(?:printk|emerg|alert|crit|err|warning|warn|notice|info|debug|dbg|vdbg|devel|cont|WARN)(?:_ratelimited|_once|)|
> + (?:[a-z0-9]+_){1,2}(?:printk|emerg|alert|crit|err|warning|warn|notice|info|debug|dbg|vdbg|devel|cont|WARN)(?:_ratelimited|_once|_cont|)|
OK
> TP_printk|
> WARN(?:_RATELIMIT|_ONCE|)|
> panic|
> @@ -6374,11 +6374,17 @@ sub process {
> }
>
> # check for logging continuations
> - if ($line =~ /\bprintk\s*\(\s*KERN_CONT\b|\bpr_cont\s*\(/) {
> + if ($line =~ /\bprintk\s*\(\s*KERN_CONT\b|\bpr_([a-z]+_)?cont\s*\(/) {
> WARN("LOGGING_CONTINUATION",
> "Avoid logging continuation uses where feasible\n" . $herecurr);
> }
OK
> +# check for logging continuations without explicit level
> + if ($line =~ /\bpr_cont\s*\(/) {
> + WARN("LOGGING_CONTINUATION_WITHOUT_LEVEL",
> + "Avoid logging continuation without level\n" . $herecurr);
> + }
> +
Not so sure about this one.
I think relatively few situations are going to require interleaving avoidance.
> # check for unnecessary use of %h[xudi] and %hh[xudi] in logging functions
> if (defined $stat &&
> $line =~ /\b$logFunctions\s*\(/ &&
Powered by blists - more mailing lists