When running `make coccicheck` in report mode using the add_namespace.cocci file, it will fail for files that contain MODULE_LICENSE. Those match the replacement precondition, but spatch errors out as virtual.ns is not set.
In order to fix that, add the virtual rule nsdeps and only do search and replace if that rule has been explicitly requested.
In order to make spatch happy in report mode, we also need a dummy rule, as otherwise it errors out with "No rules apply". Using a script:python rule appears unrelated and odd, but this is the shortest I could come up with.
Adjust scripts/nsdeps accordingly to set the nsdeps rule when run trough `make nsdeps`.
Suggested-by: Julia Lawall julia.lawall@inria.fr Fixes: c7c4e29fb5a4 ("scripts: add_namespace: Fix coccicheck failed") Cc: YueHaibing yuehaibing@huawei.com Cc: jeyu@kernel.org Cc: cocci@systeme.lip6.fr Cc: stable@vger.kernel.org Signed-off-by: Matthias Maennich maennich@google.com --- scripts/coccinelle/misc/add_namespace.cocci | 8 +++++++- scripts/nsdeps | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/scripts/coccinelle/misc/add_namespace.cocci b/scripts/coccinelle/misc/add_namespace.cocci index 99e93a6c2e24..cbf1614163cb 100644 --- a/scripts/coccinelle/misc/add_namespace.cocci +++ b/scripts/coccinelle/misc/add_namespace.cocci @@ -6,6 +6,7 @@ /// add a missing namespace tag to a module source file. ///
+virtual nsdeps virtual report
@has_ns_import@ @@ -16,10 +17,15 @@ MODULE_IMPORT_NS(ns);
// Add missing imports, but only adjacent to a MODULE_LICENSE statement. // That ensures we are adding it only to the main module source file. -@do_import depends on !has_ns_import@ +@do_import depends on !has_ns_import && nsdeps@ declarer name MODULE_LICENSE; expression license; identifier virtual.ns; @@ MODULE_LICENSE(license); + MODULE_IMPORT_NS(ns); + +// Dummy rule for report mode that would otherwise be empty and make spatch +// fail ("No rules apply.") +@script:python depends on report@ +@@ diff --git a/scripts/nsdeps b/scripts/nsdeps index 03a8e7cbe6c7..dab4c1a0e27d 100644 --- a/scripts/nsdeps +++ b/scripts/nsdeps @@ -29,7 +29,7 @@ fi
generate_deps_for_ns() { $SPATCH --very-quiet --in-place --sp-file \ - $srctree/scripts/coccinelle/misc/add_namespace.cocci -D ns=$1 $2 + $srctree/scripts/coccinelle/misc/add_namespace.cocci -D nsdeps -D ns=$1 $2 }
generate_deps() {
On Thu, 4 Jun 2020, Matthias Maennich wrote:
When running `make coccicheck` in report mode using the add_namespace.cocci file, it will fail for files that contain MODULE_LICENSE. Those match the replacement precondition, but spatch errors out as virtual.ns is not set.
In order to fix that, add the virtual rule nsdeps and only do search and replace if that rule has been explicitly requested.
In order to make spatch happy in report mode, we also need a dummy rule, as otherwise it errors out with "No rules apply". Using a script:python rule appears unrelated and odd, but this is the shortest I could come up with.
Adjust scripts/nsdeps accordingly to set the nsdeps rule when run trough `make nsdeps`.
Suggested-by: Julia Lawall julia.lawall@inria.fr Fixes: c7c4e29fb5a4 ("scripts: add_namespace: Fix coccicheck failed") Cc: YueHaibing yuehaibing@huawei.com Cc: jeyu@kernel.org Cc: cocci@systeme.lip6.fr Cc: stable@vger.kernel.org Signed-off-by: Matthias Maennich maennich@google.com
Acked-by: Julia Lawall julia.lawall@inria.fr
Shuah reported the problem to me, so you could add
Reported-by: Shuah Khan skhan@linuxfoundation.org
scripts/coccinelle/misc/add_namespace.cocci | 8 +++++++- scripts/nsdeps | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/scripts/coccinelle/misc/add_namespace.cocci b/scripts/coccinelle/misc/add_namespace.cocci index 99e93a6c2e24..cbf1614163cb 100644 --- a/scripts/coccinelle/misc/add_namespace.cocci +++ b/scripts/coccinelle/misc/add_namespace.cocci @@ -6,6 +6,7 @@ /// add a missing namespace tag to a module source file. ///
+virtual nsdeps virtual report
@has_ns_import@ @@ -16,10 +17,15 @@ MODULE_IMPORT_NS(ns);
// Add missing imports, but only adjacent to a MODULE_LICENSE statement. // That ensures we are adding it only to the main module source file. -@do_import depends on !has_ns_import@ +@do_import depends on !has_ns_import && nsdeps@ declarer name MODULE_LICENSE; expression license; identifier virtual.ns; @@ MODULE_LICENSE(license);
- MODULE_IMPORT_NS(ns);
+// Dummy rule for report mode that would otherwise be empty and make spatch +// fail ("No rules apply.") +@script:python depends on report@ +@@ diff --git a/scripts/nsdeps b/scripts/nsdeps index 03a8e7cbe6c7..dab4c1a0e27d 100644 --- a/scripts/nsdeps +++ b/scripts/nsdeps @@ -29,7 +29,7 @@ fi
generate_deps_for_ns() { $SPATCH --very-quiet --in-place --sp-file \
$srctree/scripts/coccinelle/misc/add_namespace.cocci -D ns=$1 $2
$srctree/scripts/coccinelle/misc/add_namespace.cocci -D nsdeps -D ns=$1 $2
}
generate_deps() {
2.27.0.rc2.251.g90737beb825-goog
On 6/4/20 1:31 PM, Julia Lawall wrote:
On Thu, 4 Jun 2020, Matthias Maennich wrote:
When running `make coccicheck` in report mode using the add_namespace.cocci file, it will fail for files that contain MODULE_LICENSE. Those match the replacement precondition, but spatch errors out as virtual.ns is not set.
In order to fix that, add the virtual rule nsdeps and only do search and replace if that rule has been explicitly requested.
In order to make spatch happy in report mode, we also need a dummy rule, as otherwise it errors out with "No rules apply". Using a script:python rule appears unrelated and odd, but this is the shortest I could come up with.
Adjust scripts/nsdeps accordingly to set the nsdeps rule when run trough `make nsdeps`.
Suggested-by: Julia Lawall julia.lawall@inria.fr Fixes: c7c4e29fb5a4 ("scripts: add_namespace: Fix coccicheck failed") Cc: YueHaibing yuehaibing@huawei.com Cc: jeyu@kernel.org Cc: cocci@systeme.lip6.fr Cc: stable@vger.kernel.org Signed-off-by: Matthias Maennich maennich@google.com
Acked-by: Julia Lawall julia.lawall@inria.fr
Shuah reported the problem to me, so you could add
Reported-by: Shuah Khan skhan@linuxfoundation.org
Very cool. No errors with this patch. Thanks for fixing it quickly.
thanks, -- Shuah
On Thu, Jun 04, 2020 at 02:39:18PM -0600, Shuah Khan wrote:
On 6/4/20 1:31 PM, Julia Lawall wrote:
On Thu, 4 Jun 2020, Matthias Maennich wrote:
When running `make coccicheck` in report mode using the add_namespace.cocci file, it will fail for files that contain MODULE_LICENSE. Those match the replacement precondition, but spatch errors out as virtual.ns is not set.
In order to fix that, add the virtual rule nsdeps and only do search and replace if that rule has been explicitly requested.
In order to make spatch happy in report mode, we also need a dummy rule, as otherwise it errors out with "No rules apply". Using a script:python rule appears unrelated and odd, but this is the shortest I could come up with.
Adjust scripts/nsdeps accordingly to set the nsdeps rule when run trough `make nsdeps`.
Suggested-by: Julia Lawall julia.lawall@inria.fr Fixes: c7c4e29fb5a4 ("scripts: add_namespace: Fix coccicheck failed") Cc: YueHaibing yuehaibing@huawei.com Cc: jeyu@kernel.org Cc: cocci@systeme.lip6.fr Cc: stable@vger.kernel.org Signed-off-by: Matthias Maennich maennich@google.com
Acked-by: Julia Lawall julia.lawall@inria.fr
Shuah reported the problem to me, so you could add
Reported-by: Shuah Khan skhan@linuxfoundation.org
Very cool. No errors with this patch. Thanks for fixing it quickly.
I am happy I could fix that and thanks for confirming. I assume your Tested-by could be added?
Is somebody willing to take this patch through their tree?
Cheers, Matthias
thanks, -- Shuah
On Mon, 22 Jun 2020, Matthias Maennich wrote:
On Thu, Jun 04, 2020 at 02:39:18PM -0600, Shuah Khan wrote:
On 6/4/20 1:31 PM, Julia Lawall wrote:
On Thu, 4 Jun 2020, Matthias Maennich wrote:
When running `make coccicheck` in report mode using the add_namespace.cocci file, it will fail for files that contain MODULE_LICENSE. Those match the replacement precondition, but spatch errors out as virtual.ns is not set.
In order to fix that, add the virtual rule nsdeps and only do search and replace if that rule has been explicitly requested.
In order to make spatch happy in report mode, we also need a dummy rule, as otherwise it errors out with "No rules apply". Using a script:python rule appears unrelated and odd, but this is the shortest I could come up with.
Adjust scripts/nsdeps accordingly to set the nsdeps rule when run trough `make nsdeps`.
Suggested-by: Julia Lawall julia.lawall@inria.fr Fixes: c7c4e29fb5a4 ("scripts: add_namespace: Fix coccicheck failed") Cc: YueHaibing yuehaibing@huawei.com Cc: jeyu@kernel.org Cc: cocci@systeme.lip6.fr Cc: stable@vger.kernel.org Signed-off-by: Matthias Maennich maennich@google.com
Acked-by: Julia Lawall julia.lawall@inria.fr
Shuah reported the problem to me, so you could add
Reported-by: Shuah Khan skhan@linuxfoundation.org
Very cool. No errors with this patch. Thanks for fixing it quickly.
I am happy I could fix that and thanks for confirming. I assume your Tested-by could be added?
Yes, that would be fine.
julia
Is somebody willing to take this patch through their tree?
Cheers, Matthias
thanks, -- Shuah
On 6/22/20 2:03 AM, Matthias Maennich wrote:
On Thu, Jun 04, 2020 at 02:39:18PM -0600, Shuah Khan wrote:
On 6/4/20 1:31 PM, Julia Lawall wrote:
On Thu, 4 Jun 2020, Matthias Maennich wrote:
When running `make coccicheck` in report mode using the add_namespace.cocci file, it will fail for files that contain MODULE_LICENSE. Those match the replacement precondition, but spatch errors out as virtual.ns is not set.
In order to fix that, add the virtual rule nsdeps and only do search and replace if that rule has been explicitly requested.
In order to make spatch happy in report mode, we also need a dummy rule, as otherwise it errors out with "No rules apply". Using a script:python rule appears unrelated and odd, but this is the shortest I could come up with.
Adjust scripts/nsdeps accordingly to set the nsdeps rule when run trough `make nsdeps`.
Suggested-by: Julia Lawall julia.lawall@inria.fr Fixes: c7c4e29fb5a4 ("scripts: add_namespace: Fix coccicheck failed") Cc: YueHaibing yuehaibing@huawei.com Cc: jeyu@kernel.org Cc: cocci@systeme.lip6.fr Cc: stable@vger.kernel.org Signed-off-by: Matthias Maennich maennich@google.com
Acked-by: Julia Lawall julia.lawall@inria.fr
Shuah reported the problem to me, so you could add
Reported-by: Shuah Khan skhan@linuxfoundation.org
Very cool. No errors with this patch. Thanks for fixing it quickly.
I am happy I could fix that and thanks for confirming. I assume your Tested-by could be added?
Yes
Tested-by: Shuah Khan skhan@linuxfoundation.org
Is somebody willing to take this patch through their tree?
My guess is that these go through kbuild git??
thanks, -- Shuah
On Mon, Jun 22, 2020 at 08:46:18AM -0600, Shuah Khan wrote:
On 6/22/20 2:03 AM, Matthias Maennich wrote:
On Thu, Jun 04, 2020 at 02:39:18PM -0600, Shuah Khan wrote:
On 6/4/20 1:31 PM, Julia Lawall wrote:
On Thu, 4 Jun 2020, Matthias Maennich wrote:
When running `make coccicheck` in report mode using the add_namespace.cocci file, it will fail for files that contain MODULE_LICENSE. Those match the replacement precondition, but spatch errors out as virtual.ns is not set.
In order to fix that, add the virtual rule nsdeps and only do search and replace if that rule has been explicitly requested.
In order to make spatch happy in report mode, we also need a dummy rule, as otherwise it errors out with "No rules apply". Using a script:python rule appears unrelated and odd, but this is the shortest I could come up with.
Adjust scripts/nsdeps accordingly to set the nsdeps rule when run trough `make nsdeps`.
Suggested-by: Julia Lawall julia.lawall@inria.fr Fixes: c7c4e29fb5a4 ("scripts: add_namespace: Fix coccicheck failed") Cc: YueHaibing yuehaibing@huawei.com Cc: jeyu@kernel.org Cc: cocci@systeme.lip6.fr Cc: stable@vger.kernel.org Signed-off-by: Matthias Maennich maennich@google.com
Acked-by: Julia Lawall julia.lawall@inria.fr
Shuah reported the problem to me, so you could add
Reported-by: Shuah Khan skhan@linuxfoundation.org
Very cool. No errors with this patch. Thanks for fixing it quickly.
I am happy I could fix that and thanks for confirming. I assume your Tested-by could be added?
Yes
Tested-by: Shuah Khan skhan@linuxfoundation.org
Is somebody willing to take this patch through their tree?
My guess is that these go through kbuild git??
If you want to take this, that's fine with me. But as I had the original file come through my tree, I can take it too. It's up to you, either is ok with me.
thanks
greg k-h
On 6/22/20 9:06 AM, Greg Kroah-Hartman wrote:
On Mon, Jun 22, 2020 at 08:46:18AM -0600, Shuah Khan wrote:
On 6/22/20 2:03 AM, Matthias Maennich wrote:
On Thu, Jun 04, 2020 at 02:39:18PM -0600, Shuah Khan wrote:
On 6/4/20 1:31 PM, Julia Lawall wrote:
On Thu, 4 Jun 2020, Matthias Maennich wrote:
When running `make coccicheck` in report mode using the add_namespace.cocci file, it will fail for files that contain MODULE_LICENSE. Those match the replacement precondition, but spatch errors out as virtual.ns is not set.
In order to fix that, add the virtual rule nsdeps and only do search and replace if that rule has been explicitly requested.
In order to make spatch happy in report mode, we also need a dummy rule, as otherwise it errors out with "No rules apply". Using a script:python rule appears unrelated and odd, but this is the shortest I could come up with.
Adjust scripts/nsdeps accordingly to set the nsdeps rule when run trough `make nsdeps`.
Suggested-by: Julia Lawall julia.lawall@inria.fr Fixes: c7c4e29fb5a4 ("scripts: add_namespace: Fix coccicheck failed") Cc: YueHaibing yuehaibing@huawei.com Cc: jeyu@kernel.org Cc: cocci@systeme.lip6.fr Cc: stable@vger.kernel.org Signed-off-by: Matthias Maennich maennich@google.com
Acked-by: Julia Lawall julia.lawall@inria.fr
Shuah reported the problem to me, so you could add
Reported-by: Shuah Khan skhan@linuxfoundation.org
Very cool. No errors with this patch. Thanks for fixing it quickly.
I am happy I could fix that and thanks for confirming. I assume your Tested-by could be added?
Yes
Tested-by: Shuah Khan skhan@linuxfoundation.org
Is somebody willing to take this patch through their tree?
My guess is that these go through kbuild git??
If you want to take this, that's fine with me. But as I had the original file come through my tree, I can take it too. It's up to you, either is ok with me.
Great. Please take this through your tree.
thanks, -- Shuah
On 6/22/20 10:14 AM, Shuah Khan wrote:
On 6/22/20 9:06 AM, Greg Kroah-Hartman wrote:
On Mon, Jun 22, 2020 at 08:46:18AM -0600, Shuah Khan wrote:
On 6/22/20 2:03 AM, Matthias Maennich wrote:
On Thu, Jun 04, 2020 at 02:39:18PM -0600, Shuah Khan wrote:
On 6/4/20 1:31 PM, Julia Lawall wrote:
On Thu, 4 Jun 2020, Matthias Maennich wrote:
> When running `make coccicheck` in report mode using the > add_namespace.cocci file, it will fail for files that contain > MODULE_LICENSE. Those match the replacement precondition, but spatch > errors out as virtual.ns is not set. > > In order to fix that, add the virtual rule nsdeps and only > do search and > replace if that rule has been explicitly requested. > > In order to make spatch happy in report mode, we also need a > dummy rule, > as otherwise it errors out with "No rules apply". Using a > script:python > rule appears unrelated and odd, but this is the shortest I > could come up > with. > > Adjust scripts/nsdeps accordingly to set the nsdeps rule > when run trough > `make nsdeps`. > > Suggested-by: Julia Lawall julia.lawall@inria.fr > Fixes: c7c4e29fb5a4 ("scripts: add_namespace: Fix coccicheck > failed") > Cc: YueHaibing yuehaibing@huawei.com > Cc: jeyu@kernel.org > Cc: cocci@systeme.lip6.fr > Cc: stable@vger.kernel.org > Signed-off-by: Matthias Maennich maennich@google.com
Acked-by: Julia Lawall julia.lawall@inria.fr
Shuah reported the problem to me, so you could add
Reported-by: Shuah Khan skhan@linuxfoundation.org
Very cool. No errors with this patch. Thanks for fixing it quickly.
I am happy I could fix that and thanks for confirming. I assume your Tested-by could be added?
Yes
Tested-by: Shuah Khan skhan@linuxfoundation.org
Is somebody willing to take this patch through their tree?
My guess is that these go through kbuild git??
If you want to take this, that's fine with me. But as I had the original file come through my tree, I can take it too. It's up to you, either is ok with me.
Great. Please take this through your tree.
Greg! Looks like this one didn't make it in. Can you pick this up?
thanks, -- Shuah
On Thu, Aug 06, 2020 at 01:48:26PM -0600, Shuah Khan wrote:
On 6/22/20 10:14 AM, Shuah Khan wrote:
On 6/22/20 9:06 AM, Greg Kroah-Hartman wrote:
On Mon, Jun 22, 2020 at 08:46:18AM -0600, Shuah Khan wrote:
On 6/22/20 2:03 AM, Matthias Maennich wrote:
On Thu, Jun 04, 2020 at 02:39:18PM -0600, Shuah Khan wrote:
On 6/4/20 1:31 PM, Julia Lawall wrote: > > > On Thu, 4 Jun 2020, Matthias Maennich wrote: > > > When running `make coccicheck` in report mode using the > > add_namespace.cocci file, it will fail for files that contain > > MODULE_LICENSE. Those match the replacement precondition, but spatch > > errors out as virtual.ns is not set. > > > > In order to fix that, add the virtual rule nsdeps and only > > do search and > > replace if that rule has been explicitly requested. > > > > In order to make spatch happy in report mode, we also need a > > dummy rule, > > as otherwise it errors out with "No rules > > apply". Using a script:python > > rule appears unrelated and odd, but this is the shortest I > > could come up > > with. > > > > Adjust scripts/nsdeps accordingly to set the nsdeps rule > > when run trough > > `make nsdeps`. > > > > Suggested-by: Julia Lawall julia.lawall@inria.fr > > Fixes: c7c4e29fb5a4 ("scripts: add_namespace: > > Fix coccicheck failed") > > Cc: YueHaibing yuehaibing@huawei.com > > Cc: jeyu@kernel.org > > Cc: cocci@systeme.lip6.fr > > Cc: stable@vger.kernel.org > > Signed-off-by: Matthias Maennich maennich@google.com > > Acked-by: Julia Lawall julia.lawall@inria.fr > > Shuah reported the problem to me, so you could add > > Reported-by: Shuah Khan skhan@linuxfoundation.org >
Very cool. No errors with this patch. Thanks for fixing it quickly.
I am happy I could fix that and thanks for confirming. I assume your Tested-by could be added?
Yes
Tested-by: Shuah Khan skhan@linuxfoundation.org
Is somebody willing to take this patch through their tree?
My guess is that these go through kbuild git??
If you want to take this, that's fine with me. But as I had the original file come through my tree, I can take it too. It's up to you, either is ok with me.
Great. Please take this through your tree.
Greg! Looks like this one didn't make it in. Can you pick this up?
I think this is 55c7549819e4 ("scripts: add dummy report mode to add_namespace.cocci") in Linus's tree right now, right?
thanks,
greg k-h
On 8/6/20 1:57 PM, Greg Kroah-Hartman wrote:
On Thu, Aug 06, 2020 at 01:48:26PM -0600, Shuah Khan wrote:
On 6/22/20 10:14 AM, Shuah Khan wrote:
On 6/22/20 9:06 AM, Greg Kroah-Hartman wrote:
On Mon, Jun 22, 2020 at 08:46:18AM -0600, Shuah Khan wrote:
On 6/22/20 2:03 AM, Matthias Maennich wrote:
On Thu, Jun 04, 2020 at 02:39:18PM -0600, Shuah Khan wrote: > On 6/4/20 1:31 PM, Julia Lawall wrote: >> >> >> On Thu, 4 Jun 2020, Matthias Maennich wrote: >> >>> When running `make coccicheck` in report mode using the >>> add_namespace.cocci file, it will fail for files that contain >>> MODULE_LICENSE. Those match the replacement precondition, but spatch >>> errors out as virtual.ns is not set. >>> >>> In order to fix that, add the virtual rule nsdeps and only >>> do search and >>> replace if that rule has been explicitly requested. >>> >>> In order to make spatch happy in report mode, we also need a >>> dummy rule, >>> as otherwise it errors out with "No rules >>> apply". Using a script:python >>> rule appears unrelated and odd, but this is the shortest I >>> could come up >>> with. >>> >>> Adjust scripts/nsdeps accordingly to set the nsdeps rule >>> when run trough >>> `make nsdeps`. >>> >>> Suggested-by: Julia Lawall julia.lawall@inria.fr >>> Fixes: c7c4e29fb5a4 ("scripts: add_namespace: >>> Fix coccicheck failed") >>> Cc: YueHaibing yuehaibing@huawei.com >>> Cc: jeyu@kernel.org >>> Cc: cocci@systeme.lip6.fr >>> Cc: stable@vger.kernel.org >>> Signed-off-by: Matthias Maennich maennich@google.com >> >> Acked-by: Julia Lawall julia.lawall@inria.fr >> >> Shuah reported the problem to me, so you could add >> >> Reported-by: Shuah Khan skhan@linuxfoundation.org >> > > Very cool. No errors with this patch. Thanks for fixing it > quickly.
I am happy I could fix that and thanks for confirming. I assume your Tested-by could be added?
Yes
Tested-by: Shuah Khan skhan@linuxfoundation.org
Is somebody willing to take this patch through their tree?
My guess is that these go through kbuild git??
If you want to take this, that's fine with me. But as I had the original file come through my tree, I can take it too. It's up to you, either is ok with me.
Great. Please take this through your tree.
Greg! Looks like this one didn't make it in. Can you pick this up?
I think this is 55c7549819e4 ("scripts: add dummy report mode to add_namespace.cocci") in Linus's tree right now, right?
Yes. It is in Linux 5.9. I was looking in the wrong place on Linux 5.8. :(
thanks, -- Shuah
linux-stable-mirror@lists.linaro.org