Re: [PATCH v6 2/2] Regulator: Add Anatop regulator driver

From: Mark Brown
Date: Sun Mar 04 2012 - 08:30:10 EST


On Sun, Mar 04, 2012 at 02:51:48PM +0800, Shawn Guo wrote:

> > + sreg = devm_kzalloc(dev, sizeof(struct anatop_regulator), GFP_KERNEL);
> > + if (!sreg)
> > + return -EINVAL;
> > + rdesc = devm_kzalloc(dev, sizeof(struct regulator_desc), GFP_KERNEL);
> > + if (!rdesc)
> > + return -EINVAL;

> Would something like the following be better?

> sreg = devm_kzalloc(dev, sizeof(*sreg) + sizeof(*rdesc), GFP_KERNEL);
> if (!sreg)
> return -ENOMEM;
> rdesc = (struct regulator_desc *)(sreg + 1);

No, that sort of pointer arithmetic would be much worse - it's harder to
read and more likely to break. However, embedding the regulator_desc in
sreg would achieve the same result without the legibility issues.

Attachment: signature.asc
Description: Digital signature