[Cocci] Coccinelle: kzalloc-simple: Add more zero allocating functions

Julia Lawall julia.lawall at lip6.fr
Wed Dec 27 10:55:29 CET 2017

On Wed, 27 Dec 2017, SF Markus Elfring wrote:

> >>>>> - x = (T)kmalloc(E1,E2);
> >>>>> + x = (T)kzalloc(E1,E2);
> >>>>>
> >>>>> This for useless pointer cast which is done implicitily.
> >>>>
> >>>> Actually, the above rule is for the case where the cast is useful.
> >>
> >> * Have you got any special aspects in mind here?
> >>
> >> * How do you think about to restrict it for pointer data types?
> >
> > The cast is useful when it is to a non-pointer type.
> Will it be needed then to use an other metavariable for the assignment target?
> How much would you like to distinguish if an item should handle a pointer
> (or not)?

The compiler will complain about an assignment between an integer and a
pointer, so one can assume that if the code is

x = (T *)kmalloc();

then x has pointer type.  If it doesn't have type T *, it doesn't matter.
Casting from void * into its type or from T * into its type will have the
same effect.  In other cases the cast is preserved.


More information about the Cocci mailing list