All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nathan Chancellor <natechancellor@gmail.com>
To: Nick Desaulniers <ndesaulniers@google.com>
Cc: Karsten Keil <isdn@linux-pingi.de>,
	"David S. Miller" <davem@davemloft.net>,
	netdev@vger.kernel.org, LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] isdn: avm: Fix string plus integer warning from Clang
Date: Tue, 8 Jan 2019 10:54:14 -0700	[thread overview]
Message-ID: <20190108175414.GA16657@flashbox> (raw)
In-Reply-To: <CAKwvOdmaZ6bbnkPGqEeaB6MMnLm+7Q14MUbbq_kNz5usgcU0bA@mail.gmail.com>

On Tue, Jan 08, 2019 at 09:50:39AM -0800, Nick Desaulniers wrote:
> On Mon, Jan 7, 2019 at 9:07 PM Nathan Chancellor
> <natechancellor@gmail.com> wrote:
> >
> > A recent commit in Clang expanded the -Wstring-plus-int warning, showing
> > some odd behavior in this file.
> >
> > drivers/isdn/hardware/avm/b1.c:426:30: warning: adding 'int' to a string does not append to the string [-Wstring-plus-int]
> >                 cinfo->version[j] = "\0\0" + 1;
> >                                     ~~~~~~~^~~
> > drivers/isdn/hardware/avm/b1.c:426:30: note: use array indexing to silence this warning
> >                 cinfo->version[j] = "\0\0" + 1;
> >                                            ^
> >                                     &      [  ]
> > 1 warning generated.
> >
> > This is equivalent to just "\0" so fix it to clean up the warning.
> 
> Hard to tell what the intent of this was.  I also assume that they
> meant to set all version strings to the empty string.  I think just `=
> ""` would be better, as otherwise that creates a new data section
> containing two zero bytes vs the empty string which already probably
> exists throughout the kernel and can be deduplicated by the linker.
> https://godbolt.org/z/qf3Rn8
> Sorry I gave the quick LGTM in
> https://github.com/ClangBuiltLinux/linux/issues/309#issuecomment-452106468,
> that was my mistake.  Assuming there's no other comments (maybe from
> the maintainers) on what the intent of this code actually is, would
> you mind sending a V2?  (Sorry again for the quick LGTM on this
> version).

Of course, thank you for the explanation and further exploration. I'll
send a v2 later today/tomorrow to give some time for the maintainers to
chime in.

> 
> >
> > Link: https://github.com/ClangBuiltLinux/linux/issues/309
> > Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
> > ---
> >  drivers/isdn/hardware/avm/b1.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/isdn/hardware/avm/b1.c b/drivers/isdn/hardware/avm/b1.c
> > index 4ac378e48902..7fa8141e2019 100644
> > --- a/drivers/isdn/hardware/avm/b1.c
> > +++ b/drivers/isdn/hardware/avm/b1.c
> > @@ -423,7 +423,7 @@ void b1_parse_version(avmctrl_info *cinfo)
> >         int i, j;
> >
> >         for (j = 0; j < AVM_MAXVERSION; j++)
> > -               cinfo->version[j] = "\0\0" + 1;
> > +               cinfo->version[j] = "\0";
> >         for (i = 0, j = 0;
> >              j < AVM_MAXVERSION && i < cinfo->versionlen;
> >              j++, i += cinfo->versionbuf[i] + 1)
> > --
> > 2.20.1
> >
> 
> 
> -- 
> Thanks,
> ~Nick Desaulniers

  reply	other threads:[~2019-01-08 17:54 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-08  5:06 [PATCH] isdn: avm: Fix string plus integer warning from Clang Nathan Chancellor
2019-01-08 17:50 ` Nick Desaulniers
2019-01-08 17:54   ` Nathan Chancellor [this message]
2019-01-10  5:41 ` [PATCH v2] " Nathan Chancellor
2019-01-10 18:57   ` Nick Desaulniers
2019-01-19 18:02   ` David Miller

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=20190108175414.GA16657@flashbox \
    --to=natechancellor@gmail.com \
    --cc=davem@davemloft.net \
    --cc=isdn@linux-pingi.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=ndesaulniers@google.com \
    --cc=netdev@vger.kernel.org \
    /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.