Netdev List
 help / color / mirror / Atom feed
From: Nathan Chancellor <nathan@kernel.org>
To: Naresh Kamboju <naresh.kamboju@linaro.org>
Cc: clang-built-linux <llvm@lists.linux.dev>,
	linux-stable <stable@vger.kernel.org>,
	lkft-triage@lists.linaro.org, Netdev <netdev@vger.kernel.org>,
	David Miller <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Sasha Levin <sashal@kernel.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Nick Desaulniers <ndesaulniers@google.com>,
	Ariel Elior <aelior@marvell.com>,
	Manish Chopra <manishc@marvell.com>
Subject: Re: clang: net: qed_main.c:1227:3: error: 'snprintf' will always be truncated; specified size is 16, but format string expands to at least 18 [-Werror,-Wfortify-source]
Date: Mon, 28 Aug 2023 07:48:26 -0700	[thread overview]
Message-ID: <20230828144826.GA3359762@dev-arch.thelio-3990X> (raw)
In-Reply-To: <CA+G9fYscGFiG1TVLyfETVu3NV5BAe8sCOXRGDnky-w31aB6yVQ@mail.gmail.com>

Hi Naresh,

On Mon, Aug 28, 2023 at 05:57:38PM +0530, Naresh Kamboju wrote:
> [My two cents]
> 
> stable-rc linux-6.1.y and linux-6.4.y x86 clang-nightly builds fail with
> following warnings / errors.
> 
> Build errors:
> --------------
> drivers/net/ethernet/qlogic/qed/qed_main.c:1227:3: error: 'snprintf'
> will always be truncated; specified size is 16, but format string
> expands to at least 18 [-Werror,-Wfortify-source]
>  1227 |                 snprintf(name, NAME_SIZE, "slowpath-%02x:%02x.%02x",
>       |                 ^
> 1 error generated.
> 
> Reported-by: Linux Kernel Functional Testing <lkft@linaro.org>

Thank you as always for the report. This is a result of a change in
clang to implement the equivalent of GCC's -Wformat-truncation, which is
currently disabled for the whole kernel in mainline and enabled in W=1
in -next. I have filed an issue to figure out what to do about this:
https://github.com/ClangBuiltLinux/linux/issues/1923

For the record, if you see an issue with clang-nightly that you do not
see with older versions of clang, it is generally an indication that
something has changed on the toolchain side, so it is probably not worth
bothering the stable or subsystem folks with the initial report.
Consider just messaging Nick, myself, and llvm@lists.linux.dev in those
cases so we can pre-triage and bring other folks in as necessary.

That said, this seems like a legitimate warning. As I mentioned above,
GCC shows the same warning with W=1 in -next, so this should be fixed.

  drivers/net/ethernet/qlogic/qed/qed_main.c: In function 'qed_slowpath_start':
  drivers/net/ethernet/qlogic/qed/qed_main.c:1218:63: error: '%02x' directive output truncated writing 2 bytes into a region of size 1 [-Werror=format-truncation=]
   1218 |                 snprintf(name, NAME_SIZE, "slowpath-%02x:%02x.%02x",
        |                                                               ^~~~
  In function 'qed_slowpath_wq_start',
      inlined from 'qed_slowpath_start' at drivers/net/ethernet/qlogic/qed/qed_main.c:1250:6:
  drivers/net/ethernet/qlogic/qed/qed_main.c:1218:43: note: directive argument in the range [0, 255]
   1218 |                 snprintf(name, NAME_SIZE, "slowpath-%02x:%02x.%02x",
        |                                           ^~~~~~~~~~~~~~~~~~~~~~~~~
  drivers/net/ethernet/qlogic/qed/qed_main.c:1218:17: note: 'snprintf' output 18 bytes into a destination of size 16
   1218 |                 snprintf(name, NAME_SIZE, "slowpath-%02x:%02x.%02x",
        |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   1219 |                          cdev->pdev->bus->number,
        |                          ~~~~~~~~~~~~~~~~~~~~~~~~
   1220 |                          PCI_SLOT(cdev->pdev->devfn), hwfn->abs_pf_id);
        |                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  cc1: all warnings being treated as errors

Cheers,
Nathan

  reply	other threads:[~2023-08-28 14:48 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-28 12:27 clang: net: qed_main.c:1227:3: error: 'snprintf' will always be truncated; specified size is 16, but format string expands to at least 18 [-Werror,-Wfortify-source] Naresh Kamboju
2023-08-28 14:48 ` Nathan Chancellor [this message]
2023-08-28 14:52 ` Greg Kroah-Hartman
2023-08-28 17:30   ` Naresh Kamboju

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=20230828144826.GA3359762@dev-arch.thelio-3990X \
    --to=nathan@kernel.org \
    --cc=aelior@marvell.com \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=lkft-triage@lists.linaro.org \
    --cc=llvm@lists.linux.dev \
    --cc=manishc@marvell.com \
    --cc=naresh.kamboju@linaro.org \
    --cc=ndesaulniers@google.com \
    --cc=netdev@vger.kernel.org \
    --cc=sashal@kernel.org \
    --cc=stable@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox