Re: [PATCH] checkpatch: Resolve improper warning for krealloc arg reuse
From: Joe Perches
Date: Wed Jul 18 2018 - 11:50:36 EST
On Wed, 2018-07-18 at 19:25 +0530, Manish Narani wrote:
> Correct the check for reuse of krealloc. It gives false warning when a
> structure member variable name and krealloc argument name is same.
>
> For Example:
> {
> ...
> abc.def_var = krealloc(def_var, sizeof(*def_var),
> GFP_KERNEL);
> ...
> }
>
> $ ./scripts/checkpatch.pl -f file.c
>
> WARNING: Reusing the krealloc arg is almost always a bug
> + abc.def_var = krealloc(def_var, sizeof(*def_var),
>
> This patch resolves the above false warning.
>
> Signed-off-by: Manish Narani <manish.narani@xxxxxxxxxx>
> ---
> scripts/checkpatch.pl | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
[]
> @@ -6119,7 +6119,7 @@ sub process {
>
> # check for krealloc arg reuse
> if ($^V && $^V ge 5.10.0 &&
> - $line =~ /\b($Lval)\s*\=\s*(?:$balanced_parens)?\s*krealloc\s*\(\s*\1\s*,/) {
> + $line =~ /\b($Lval)\s*\=\s*(?:$balanced_parens)?\s*krealloc\s*\(\s*\1\s*,/ && $line !~ m/[\.|\-\>].*\s*\=\s*.*/) {
Thanks but nack.
This is more an issue with $Lval.
I'll look around for a solution.