On Thu, 2020-12-17 at 18:11 +0100, Helge Deller wrote:
> In most cases people use lookup_symbol_name() to resolve a kernel symbol
> and then print it via printk().
> 
> In such cases using the %ps, %pS, %pSR or %pB printk formats are easier
> to use and thus should be preferred.
[]
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
[]
> @@ -4317,6 +4317,12 @@ sub process {
>                            "LINUX_VERSION_CODE should be avoided, code should 
> be for the version to which it is merged\n" . $herecurr);
>               }
> 
> +# avoid lookup_symbol_name()
> +             if ($line =~ /\blookup_symbol_name\b/) {
> +                     WARN("PREFER_PRINTK_FORMAT",
> +                          "If possible prefer %ps or %pS printk format 
> string to print symbol name instead of using lookup_symbol_name()\n" . 
> $herecurr);
> +             }
> +
>  # check for uses of printk_ratelimit
>               if ($line =~ /\bprintk_ratelimit\s*\(/) {
>                       WARN("PRINTK_RATELIMITED",

Huh?  nak.

lookup_symbol_name is used in the kernel a grand total of 3 times.
2 uses are kprobe, the other is fs/proc

None of the existing uses is equivalent to %ps

Why should this be applied?


Reply via email to