Messages in this thread | | | Date | Fri, 21 Aug 2020 22:34:16 +0200 (CEST) | From | Julia Lawall <> | Subject | Re: [Cocci] [PATCH v2] coccinelle: api: add kobj_to_dev.cocci script |
| |
On Fri, 21 Aug 2020, Denis Efremov wrote:
> Use kobj_to_dev() instead of container_of(). > > Signed-off-by: Denis Efremov <efremov@linux.com>
Applied, thanks.
julia
> --- > Changes in v2: > - "symbol kobj;" added to the rule r > > scripts/coccinelle/api/kobj_to_dev.cocci | 45 ++++++++++++++++++++++++ > 1 file changed, 45 insertions(+) > create mode 100644 scripts/coccinelle/api/kobj_to_dev.cocci > > diff --git a/scripts/coccinelle/api/kobj_to_dev.cocci b/scripts/coccinelle/api/kobj_to_dev.cocci > new file mode 100644 > index 000000000000..cd5d31c6fe76 > --- /dev/null > +++ b/scripts/coccinelle/api/kobj_to_dev.cocci > @@ -0,0 +1,45 @@ > +// SPDX-License-Identifier: GPL-2.0-only > +/// > +/// Use kobj_to_dev() instead of container_of() > +/// > +// Confidence: High > +// Copyright: (C) 2020 Denis Efremov ISPRAS > +// Options: --no-includes --include-headers > +// > +// Keywords: kobj_to_dev, container_of > +// > + > +virtual context > +virtual report > +virtual org > +virtual patch > + > + > +@r depends on !patch@ > +expression ptr; > +symbol kobj; > +position p; > +@@ > + > +* container_of(ptr, struct device, kobj)@p > + > + > +@depends on patch@ > +expression ptr; > +@@ > + > +- container_of(ptr, struct device, kobj) > ++ kobj_to_dev(ptr) > + > + > +@script:python depends on report@ > +p << r.p; > +@@ > + > +coccilib.report.print_report(p[0], "WARNING opportunity for kobj_to_dev()") > + > +@script:python depends on org@ > +p << r.p; > +@@ > + > +coccilib.org.print_todo(p[0], "WARNING opportunity for kobj_to_dev()") > -- > 2.26.2 > > _______________________________________________ > Cocci mailing list > Cocci@systeme.lip6.fr > https://systeme.lip6.fr/mailman/listinfo/cocci >
| |