On Mon, Jul 29, 2019 at 05:53:51PM +0200, Hans de Goede wrote: > Hi, > > On 25-07-19 21:05, Andy Shevchenko wrote: > > One of the more common cases of allocation size calculations is finding > > the size of a structure that has a zero-sized array at the end, along > > with memory for some number of elements for that array. > > > > Make use of the struct_size() helper instead of an open-coded version > > in order to avoid any potential type mistakes. > > > > Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> > > Looks good to me: > > Reviewed-by: Hans de Goede <hdegoede@xxxxxxxxxx> Pushed to my review and testing queue, thanks! > > > > --- > > drivers/platform/x86/i2c-multi-instantiate.c | 4 +--- > > 1 file changed, 1 insertion(+), 3 deletions(-) > > > > diff --git a/drivers/platform/x86/i2c-multi-instantiate.c b/drivers/platform/x86/i2c-multi-instantiate.c > > index 197d8a192721..61fe341a85aa 100644 > > --- a/drivers/platform/x86/i2c-multi-instantiate.c > > +++ b/drivers/platform/x86/i2c-multi-instantiate.c > > @@ -81,9 +81,7 @@ static int i2c_multi_inst_probe(struct platform_device *pdev) > > if (ret < 0) > > return ret; > > - multi = devm_kmalloc(dev, > > - offsetof(struct i2c_multi_inst_data, clients[ret]), > > - GFP_KERNEL); > > + multi = devm_kmalloc(dev, struct_size(multi, clients, ret), GFP_KERNEL); > > if (!multi) > > return -ENOMEM; > > -- With Best Regards, Andy Shevchenko