[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20151211141845.GK5284@mwanda>
Date: Fri, 11 Dec 2015 17:18:45 +0300
From: Dan Carpenter <dan.carpenter@...cle.com>
To: Sanidhya Solanki <jpage.lkml@...il.com>
Cc: devel@...verdev.osuosl.org, lidza.louina@...il.com,
driverdev-devel@...uxdriverproject.org,
linux-kernel@...r.kernel.org, gregkh@...uxfoundation.org
Subject: Re: [PATCH] staging: dgnc: Patch includes the checkpatch fixes
On Fri, Dec 11, 2015 at 05:10:43AM -0500, Sanidhya Solanki wrote:
> On Fri, 11 Dec 2015 16:02:33 +0300
> Dan Carpenter <dan.carpenter@...cle.com> wrote:
>
> > > Signed-off-by: Sanidhya Solanki <jpage.lkml@...il.com>
> > > @@ -110,7 +98,16 @@ static ssize_t dgnc_vpd_show(struct device *p, struct device_attribute *attr,
> > > int count = 0;
> > > int i = 0;
> > >
> > > - DGNC_VERIFY_BOARD(p, bd);
> > > + do {
> > > + if (!p)
> > > + return 0;
> > > +
> > > + bd = dev_get_drvdata(p);
> > > + if (!bd || bd->magic != DGNC_BOARD_MAGIC)
> > > + return 0;
> > > + if (bd->state != BOARD_READY)
> > > + return 0;
> > > + } while (0);
> >
> > Google about why do while(0) loops are used in macros and then redo
> > this. Mostly the patch isn't bad, but I suspect I'm going to complain
> > about how you split up some of the long lines.
>
> Let me just be completely sure that you and I are on the same page
> here. The macro was used to replace the do-while loop, I replaced all
> instances of the macro with the the actual loop. Both pieces were
> originally part of the code, just using macros in place of do-while
> statements. Do you still want me to change it? Maybe the original
> author did it for a specific reason.
>
https://www.quora.com/What-is-the-purpose-of-using-do-while-0-in-macros
Do while(0) is used to make a macro look like a function. Since we have
deleted the macro we don't need the do while.
regards,
dan carpenter
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists