[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e8221cc5-cf5b-49f8-871d-e49d6621fc6e@imag.fr>
Date: Thu, 5 Jun 2025 19:43:15 +0200
From: Nicolas Palix <nicolas.palix@...g.fr>
To: Songwei Chai <quic_songchai@...cinc.com>,
Julia Lawall <Julia.Lawall@...ia.fr>, cocci@...ia.fr
Cc: linux-kernel@...r.kernel.org, quic_tingweiz@...cinc.com,
quic_jinlmao@...cinc.com
Subject: Re: [PATCH v1] scripts: coccicheck: filter *.cocci files by MODE
Hi Songwei,
Le 05/06/2025 à 06:44, Songwei Chai a écrit :
> Enhance the coccicheck script to filter *.cocci files based on the
> specified MODE (e.g., report, patch). This ensures that only compatible
> semantic patch files are executed, preventing errors such as:
>
> "virtual rule report not supported"
>
> This error occurs when a .cocci file does not define a 'virtual <MODE>'
> rule, yet is executed in that mode.
I am fine with the idea even if the orignal idea was to be exhaustive in
the implementation of the mode in each SP.
However, silently discarding the patch is maybe not what one would
expect as the considered SP will vary according to the mode.
Hence, could I suggest to add an else branch reporting a warning at least ?
Regards,
>
> For example:
>
> make coccicheck M=drivers/hwtracing/coresight/ MODE=report
>
> In this case, running "secs_to_jiffies.cocci" would trigger the error
> because it lacks support for 'report' mode. With this change, such files
> are skipped automatically, improving robustness and developer experience.
>
> Signed-off-by: Songwei Chai <quic_songchai@...cinc.com>
> ---
> scripts/coccicheck | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/scripts/coccicheck b/scripts/coccicheck
> index 0e6bc5a10320..18a69edcea66 100755
> --- a/scripts/coccicheck
> +++ b/scripts/coccicheck
> @@ -270,7 +270,9 @@ fi
>
> if [ "$COCCI" = "" ] ; then
> for f in `find $srctree/scripts/coccinelle/ -name '*.cocci' -type f | sort`; do
> - coccinelle $f
> + if grep -q "virtual[[:space:]]\+$MODE" "$f"; then
> + coccinelle $f
> + fi
> done
> else
> coccinelle $COCCI
>
Powered by blists - more mailing lists