All of lore.kernel.org
 help / color / mirror / Atom feed
From: Greg KH <gregkh@linuxfoundation.org>
To: Shreyansh Chouhan <chouhan.shreyansh630@gmail.com>
Cc: pure.logic@nexus-software.ie, johan@kernel.org, elder@kernel.org,
	greybus-dev@lists.linaro.org, linux-staging@lists.linux.dev,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH] staging: greybus: fix gb_loopback_stats_attrs definition
Date: Fri, 14 May 2021 17:30:45 +0200	[thread overview]
Message-ID: <YJ6XpUMliWQOS8MB@kroah.com> (raw)
In-Reply-To: <YJ6TUAowTI75h/sl@fedora>

On Fri, May 14, 2021 at 08:42:16PM +0530, Shreyansh Chouhan wrote:
> On Fri, May 14, 2021 at 04:30:23PM +0200, Greg KH wrote:
> > On Fri, May 14, 2021 at 07:53:57PM +0530, Shreyansh Chouhan wrote:
> > > On Fri, May 14, 2021 at 04:05:32PM +0200, Greg KH wrote:
> > > > On Fri, May 14, 2021 at 07:18:38PM +0530, Shreyansh Chouhan wrote:
> > > > > On Fri, May 14, 2021 at 03:36:25PM +0200, Greg KH wrote:
> > > > > > On Fri, May 14, 2021 at 07:00:39PM +0530, Shreyansh Chouhan wrote:
> > > > > > > The gb_loopback_stats_attrs macro, (defined in loopback.c,) is a
> > > > > > > multiline macro whose statements were not enclosed in a do while
> > > > > > > loop.
> > > > > > >
> > > > > > > This patch adds a do while loop around the statements of the said
> > > > > > > macro.
> > > > > > >
> > > > > > > Signed-off-by: Shreyansh Chouhan <chouhan.shreyansh630@gmail.com>
> > > > > > > ---
> > > > > > >  drivers/staging/greybus/loopback.c | 10 ++++++----
> > > > > > >  1 file changed, 6 insertions(+), 4 deletions(-)
> > > > > > >
> > > > > > > diff --git a/drivers/staging/greybus/loopback.c b/drivers/staging/greybus/loopback.c
> > > > > > > index 2471448ba42a..c88ef3e894fa 100644
> > > > > > > --- a/drivers/staging/greybus/loopback.c
> > > > > > > +++ b/drivers/staging/greybus/loopback.c
> > > > > > > @@ -162,10 +162,12 @@ 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)
> > > > > > > +#define gb_loopback_stats_attrs(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.31.1
> > > > > > >
> > > > > > >
> > > > > >
> > > > > > Did you test build this change?
> > > > >
> > > > > I built the module using make -C . M=drivers/staging/greybus to test
> > > > > build it. I didn't get any errors.
> > > >
> > > > Really?  Can you provide the full build output for this file with your
> > > > change?  I don't think you really built this file for the obvious
> > > > reasons...
> > >
> > > I ran make -C . M=drivers/staging/greybus
> > >
> > > I got a three line output saying:
> > > make: Entering directory '/work/linux'
> > >   MODPOST drivers/staging/greybus//Module.symvers
> > > make: Leaving directory '/work/linux'
> > >
> > > I just tried rebuilding the kernel with CONFIG_GREYBUS=m, and now I can
> > > see what you are talking about. Why weren't these errors reported when I
> > > ran the previous make command? Does that too check for the config
> > > variables even when I specifically asked it to build a module?
> >
> > You were just asking it to build a subdirectory, not a specific
> > individual file, and when you do that it looks at the configuration
> > settings.
> >
> 
> I see.
> 
> > It's always good to ensure that you actually build the files you modify
> > before sending patches out.
> 
> Sorry, I googled about building a single module, and thought running
> that command would have built it. Moreover, since the change was so
> simple I didn't suspect anything when it got built correctly the first
> time around.
> 
> I didn't look at how/where was the macro called and missed a very
> obvious error. Now that I have looked at it, the only way I can think of
> fixing this is changing the macro to a (inline?) function. Will
> that be a desirable change?

No, it can't be a function, the code is fine as-is, checkpatch is just a
perl script and does not always know what needs to be done.

thanks,

greg k-h

  reply	other threads:[~2021-05-14 15:30 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-14 13:30 [PATCH] staging: greybus: fix gb_loopback_stats_attrs definition Shreyansh Chouhan
2021-05-14 13:36 ` Greg KH
2021-05-14 13:48   ` Shreyansh Chouhan
2021-05-14 14:05     ` Greg KH
2021-05-14 14:23       ` Shreyansh Chouhan
2021-05-14 14:30         ` Greg KH
2021-05-14 15:12           ` Shreyansh Chouhan
2021-05-14 15:30             ` Greg KH [this message]
2021-05-14 15:34               ` Shreyansh Chouhan
2021-05-14 15:56               ` Joe Perches
2021-05-14 15:56                 ` Joe Perches
2021-05-14 16:51                 ` Shreyansh Chouhan
2021-05-14 18:04                 ` Shreyansh Chouhan
2021-05-14 18:53                 ` Alex Elder
2021-05-14 19:07                   ` Shreyansh Chouhan
2021-05-14 19:32                   ` Joe Perches
2021-05-14 19:32                     ` Joe Perches
2021-05-14 19:40                   ` Shreyansh Chouhan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=YJ6XpUMliWQOS8MB@kroah.com \
    --to=gregkh@linuxfoundation.org \
    --cc=chouhan.shreyansh630@gmail.com \
    --cc=elder@kernel.org \
    --cc=greybus-dev@lists.linaro.org \
    --cc=johan@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-staging@lists.linux.dev \
    --cc=pure.logic@nexus-software.ie \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.