Messages in this thread | | | Subject | Re: [RFC PATCH] checkpatch: check for function calls with struct or union on stack | From | Joe Perches <> | Date | Sat, 28 Jul 2018 10:20:44 -0700 |
| |
(unintentionally sent partial reply, better now)
On Sat, 2018-07-28 at 08:25 +0200, Julia Lawall wrote: > On Fri, 27 Jul 2018, Joe Perches wrote: [] > > It might make sense for this sort of check to be > > added to coccinelle or maybe as a compiler warning > > when the struct is larger than some size. > > > > Original thread for Julia: > > https://lore.kernel.org/patchwork/patch/967890/ > > Coccinelle doesn't directly know the size of the structure, but it can > count the number of fields. Maybe a case with an update in the function > body
Perhaps this might be the most useful to check.
> or at least 3 fields is worth reporting on?
Maybe, maybe not. For instance:
lib/vsprintf.c uses struct printf_spec which is 5 fields totaling 8 bytes and that fits nicely in a single register on x86-64 so there are good reasons why structs could be passed by value.
Maybe structs with arrays or other structs would make more sense.
| |