Re: [Cocci] [PATCH v3] Coccinelle: Script to replace allocate and memset with zalloc functions

From: Julia Lawall
Date: Fri Aug 19 2016 - 08:43:01 EST




On Fri, 19 Aug 2016, Amitoj Kaur Chawla wrote:

> On Mon, Aug 1, 2016 at 4:53 PM, SF Markus Elfring
> <elfring@xxxxxxxxxxxxxxxxxxxxx> wrote:
> >> +@vz1 depends on patch && !context && !org && !report@
> >> +type T;
> >> +T *d;
> >> +statement S;
> >> +@@
> >> +
> >> + d =
> >> +- vmalloc
> >> ++ vzalloc
> >> + (...);
> >> + if (!d) S
> >> +- memset(d, 0, sizeof(T));
> >> +
> >> +@vz2 depends on patch && !context && !org && !report@
> >> +expression d;
> >> +statement S;
> >> +@@
> >> +
> >> + d =
> >> +- vmalloc
> >> ++ vzalloc
> >> + (...);
> >> + if (!d) S
> >> +- memset(d, 0, sizeof(*d));
> >
> > I suggest to take another look at a few implementation details.
> >
> > 1. Would it make sense to merge such SmPL rules into one
> > so that code duplication could be reduced a bit
> > in such a script?
> >
> > 2. How do you think about to extend the shown check list
> > with the function "kvm_kvzalloc"?
> >
>
> Hi Markus,
>
> kvm_kvzalloc function doesn't fit the same pattern as the other
> functions in this semantic patch, and is kvm specific, so the
> semantic patch looks fine as is.

Acked-by: Julia Lawall <julia.lawall@xxxxxxx>

>
> Thanks,
> Amitoj
>
> > 3. Do you want to maintain a growing (?) function name list manually?
> >
> > Regards,
> > Markus
>