BPF List
 help / color / mirror / Atom feed
From: Mirsad Todorovac <mtodorovac69@gmail.com>
To: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Cc: Martin KaFai Lau <martin.lau@linux.dev>,
	Alexei Starovoitov <ast@kernel.org>,
	Daniel Borkmann <daniel@iogearbox.net>,
	Andrii Nakryiko <andrii@kernel.org>,
	Eduard Zingerman <eddyz87@gmail.com>, Song Liu <song@kernel.org>,
	Yonghong Song <yonghong.song@linux.dev>,
	John Fastabend <john.fastabend@gmail.com>,
	KP Singh <kpsingh@kernel.org>,
	Stanislav Fomichev <sdf@fomichev.me>, Hao Luo <haoluo@google.com>,
	Jiri Olsa <jolsa@kernel.org>,
	bpf@vger.kernel.org
Subject: [PROBLEM linux-next] /kernel/bpf/btf.c:7581:9: error: function ‘btf_snprintf_show’ might be a candidate for ‘gnu_printf’ format attribute [-Werror=suggest-attribute=format]
Date: Wed, 10 Jul 2024 20:14:19 +0200	[thread overview]
Message-ID: <a8b20c72-6631-4404-9e1f-0410642d7d20@gmail.com> (raw)

Dear all,

On the linux-next vanilla next-20240709 tree, I have attempted the seed KCONFIG_SEED=0xEE7AB52F
which was known from before to trigger various errors in compile and build process.

Though this might seem as contributing to channel noise, Linux refuses to build this config,
treating warnings as errors, using this build line:

$ time nice make W=1 -k -j 36 |& tee ../err-next-20230709-01a.log; date

As I know that the Chief Penguin doesn't like warnings, but I am also aware that there are plenty
left, there seems to be more tedious work ahead to make the compilers happy.

The compiler output is:

./kernel/bpf/btf.c: In function ‘btf_seq_show’:
./kernel/bpf/btf.c:7544:29: error: function ‘btf_seq_show’ might be a candidate for ‘gnu_printf’ format attribute [-Werror=suggest-attribute=format]
 7544 |         seq_vprintf((struct seq_file *)show->target, fmt, args);
      |                             ^~~~~~~~
./kernel/bpf/btf.c: In function ‘btf_snprintf_show’:
./kernel/bpf/btf.c:7581:9: error: function ‘btf_snprintf_show’ might be a candidate for ‘gnu_printf’ format attribute [-Werror=suggest-attribute=format]
 7581 |         len = vsnprintf(show->target, ssnprintf->len_left, fmt, args);
      |         ^~~

This doesn't seem alarming, but it prevents build with this config.

7541 static void btf_seq_show(struct btf_show *show, const char *fmt,
7542                          va_list args)
7543 {
7544      → seq_vprintf((struct seq_file *)show->target, fmt, args);
7545 }
7546 

7575 static void btf_snprintf_show(struct btf_show *show, const char *fmt,
7576                               va_list args)
7577 {
7578         struct btf_show_snprintf *ssnprintf = (struct btf_show_snprintf *)show;
7579         int len;
7580 
7581       → len = vsnprintf(show->target, ssnprintf->len_left, fmt, args);
7582 
7583         if (len < 0) {
7584                 ssnprintf->len_left = 0;
7585                 ssnprintf->len = len;
7586         } else if (len >= ssnprintf->len_left) {
7587                 /* no space, drive on to get length we would have written */
7588                 ssnprintf->len_left = 0;
7589                 ssnprintf->len += len;
7590         } else {
7591                 ssnprintf->len_left -= len;
7592                 ssnprintf->len += len;
7593                 show->target += len;
7594         }
7595 }

Hope this helps.

Best regards,
Mirsad Todorovac

             reply	other threads:[~2024-07-10 18:14 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-07-10 18:14 Mirsad Todorovac [this message]
2024-07-11 18:26 ` [PROBLEM linux-next] /kernel/bpf/btf.c:7581:9: error: function ‘btf_snprintf_show’ might be a candidate for ‘gnu_printf’ format attribute [-Werror=suggest-attribute=format] Alan Maguire

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=a8b20c72-6631-4404-9e1f-0410642d7d20@gmail.com \
    --to=mtodorovac69@gmail.com \
    --cc=andrii@kernel.org \
    --cc=ast@kernel.org \
    --cc=bpf@vger.kernel.org \
    --cc=daniel@iogearbox.net \
    --cc=eddyz87@gmail.com \
    --cc=haoluo@google.com \
    --cc=john.fastabend@gmail.com \
    --cc=jolsa@kernel.org \
    --cc=kpsingh@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=martin.lau@linux.dev \
    --cc=sdf@fomichev.me \
    --cc=song@kernel.org \
    --cc=yonghong.song@linux.dev \
    /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