2020-11-29 16:53:38

by Trond Myklebust

[permalink] [raw]
Subject: Re: [PATCH] NFS: remove trailing semicolon in macro definition

On Sun, 2020-11-29 at 16:42 +0000, Trond Myklebust wrote:
> Hi Tom,
>
> On Fri, 2020-11-27 at 11:43 -0800, [email protected] wrote:
> > From: Tom Rix <[email protected]>
> >
> > The macro use will already have a semicolon.
> >
> > Signed-off-by: Tom Rix <[email protected]>
> > ---
> >  net/sunrpc/auth_gss/gss_generic_token.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/net/sunrpc/auth_gss/gss_generic_token.c
> > b/net/sunrpc/auth_gss/gss_generic_token.c
> > index fe97f3106536..9ae22d797390 100644
> > --- a/net/sunrpc/auth_gss/gss_generic_token.c
> > +++ b/net/sunrpc/auth_gss/gss_generic_token.c
> > @@ -46,7 +46,7 @@
> >  /* TWRITE_STR from gssapiP_generic.h */
> >  #define TWRITE_STR(ptr, str, len) \
> >         memcpy((ptr), (char *) (str), (len)); \
> > -       (ptr) += (len);
> > +       (ptr) += (len)
> >  
> >  /* XXXX this code currently makes the assumption that a mech oid
> > will
> >     never be longer than 127 bytes.  This assumption is not
> > inherent
> > in
>
> There is exactly 1 use of this macro in the code AFAICS. Can we
> please
> just get rid of it, and make the code trivially easier to read?
>


BTW: To illustrate just how obfuscating this kind of macro can be, note
that the line you are changing above will be completely optimised away
in the 1 use case we're talking about. It is bumping a pointer value
that immediately gets discarded.

--
Trond Myklebust
Linux NFS client maintainer, Hammerspace
[email protected]