Re: [PATCH] staging: greybus: loopback: fix up checkpath macro do while error.

From: Dan Carpenter
Date: Mon Apr 03 2023 - 02:24:12 EST


On Sun, Apr 02, 2023 at 08:22:35PM +0200, Ángel Alberto Carretero wrote:
>
>
> On 02/04/2023 15:16, Greg Kroah-Hartman wrote:
> > On Sun, Apr 02, 2023 at 02:25:51PM +0200, Angel Alberto Carretero wrote:
> > > Wrap macro in a do-while statement.
> > >
> > > Signed-off-by: Angel Alberto Carretero <angelalbertoc.r@xxxxxxxxx>
> > > ---
> > > drivers/staging/greybus/loopback.c | 8 +++++---
> > > 1 file changed, 5 insertions(+), 3 deletions(-)
> > >
> > > diff --git a/drivers/staging/greybus/loopback.c b/drivers/staging/greybus/loopback.c
> > > index d7b39f3bb652..371809770ed0 100644
> > > --- a/drivers/staging/greybus/loopback.c
> > > +++ b/drivers/staging/greybus/loopback.c
> > > @@ -162,9 +162,11 @@ static ssize_t name##_avg_show(struct device *dev, \
> > > static DEVICE_ATTR_RO(name##_avg)
> > > #define gb_loopback_stats_attrs(field) \
> > > - gb_loopback_ro_stats_attr(field, min, u); \
> > > - gb_loopback_ro_stats_attr(field, max, u); \
> > > - gb_loopback_ro_avg_attr(field)
> > > + do { \
> > > + gb_loopback_ro_stats_attr(field, min, u); \
> > > + gb_loopback_ro_stats_attr(field, max, u); \
> > > + gb_loopback_ro_avg_attr(field); \
> > > + } while (0)
> > > #define gb_loopback_attr(field, type) \
> > > static ssize_t field##_show(struct device *dev, \
> > > --
> > > 2.40.0
> > >
> > >
> >
> > Any specific reason why you did not test build your change before
> > submitting it?
> >
> > thanks,
> >
> > greg k-h
>
> Apologies, we can drop the patch. I was trying to find an error as part
> of the eudyptula challenge and thought I was compiling the driver
> correctly. Upon further examination, the macro cannot be written with a
> do-while because it is defining functions.

The "eudyptula challenge" and other first patch guides should be updated
to tell people to search for their code on lore.kernel.org before
sending a patch.

See if you can fix one of the howtos.

regards,
dan carpenter