Messages in this thread | | | Date | Tue, 21 Jul 2020 11:58:55 +0200 (CEST) | From | Julia Lawall <> | Subject | Re: [PATCH v3 2/3] coccinelle: api: extend memdup_user rule with vmemdup_user() |
| |
On Tue, 21 Jul 2020, Markus Elfring wrote:
> … > > +++ b/scripts/coccinelle/api/memdup_user.cocci > > @@ -39,6 +39,28 @@ … > … > > +@depends on patch@ > > +expression from,to,size; > > +identifier l1,l2; > > +@@ > > + > > +- to = \(kvmalloc\|kvzalloc\)(size,\(GFP_KERNEL\|GFP_USER\)); > > ++ to = vmemdup_user(from,size); > > I propose to combine the desired adjustment with the previous SmPL rule > by using another disjunction. > > > > +@rv depends on !patch@ > > +expression from,to,size; > > +position p; > > +statement S1,S2; > > +@@ > > + > > +* to = \(kvmalloc@p\|kvzalloc@p\)(size,\(GFP_KERNEL\|GFP_USER\)); > > + if (to==NULL || ...) S1 > > + if (copy_from_user(to, from, size) != 0) > > + S2 > > * Can it be helpful to omit the SmPL asterisk functionality from > the operation modes “org” and “report”? > > * Should the operation mode “context” work without an extra position metavariable?
This is fine as is in all three aspects.
julia
| |