All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Borkmann <daniel@iogearbox.net>
To: Jakub Sitnicki <jakub@cloudflare.com>, Andrii Nakryiko <andriin@fb.com>
Cc: bpf@vger.kernel.org, netdev@vger.kernel.org, ast@fb.com,
	andrii.nakryiko@gmail.com, kernel-team@fb.com
Subject: Re: [PATCH v2 bpf-next] libbpf: fix false uninitialized variable warning
Date: Thu, 30 Apr 2020 16:25:45 +0200	[thread overview]
Message-ID: <327815ee-9a10-cab3-c8f8-8ceeafa0877f@iogearbox.net> (raw)
In-Reply-To: <87imhhv1av.fsf@cloudflare.com>

On 4/30/20 10:13 AM, Jakub Sitnicki wrote:
> On Thu, Apr 30, 2020 at 04:14 AM CEST, Andrii Nakryiko wrote:
>> Some versions of GCC falsely detect that vi might not be initialized. That's
>> not true, but let's silence it with NULL initialization.
>>
>> Signed-off-by: Andrii Nakryiko <andriin@fb.com>
>> ---
>>   tools/lib/bpf/libbpf.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/tools/lib/bpf/libbpf.c b/tools/lib/bpf/libbpf.c
>> index d86ff8214b96..977add1b73e2 100644
>> --- a/tools/lib/bpf/libbpf.c
>> +++ b/tools/lib/bpf/libbpf.c
>> @@ -5003,8 +5003,8 @@ static int bpf_object__collect_map_relos(struct bpf_object *obj,
>>   					 GElf_Shdr *shdr, Elf_Data *data)
>>   {
>>   	int i, j, nrels, new_sz, ptr_sz = sizeof(void *);
>> +	const struct btf_var_secinfo *vi = NULL;
>>   	const struct btf_type *sec, *var, *def;
>> -	const struct btf_var_secinfo *vi;
>>   	const struct btf_member *member;
>>   	struct bpf_map *map, *targ_map;
>>   	const char *name, *mname;
> 
> Alternatively we could borrow the kernel uninitialized_var macro:
> 
> include/linux/compiler-clang.h:#define uninitialized_var(x) x = *(&(x))
> include/linux/compiler-gcc.h:#define uninitialized_var(x) x = x

We could do that potentially, at least to mark such locations explicitly,
although I wonder if it's not more churn than anything else adding the
infra for it. But generally no objections from my side.

Anyway, applied this one, thanks!

      reply	other threads:[~2020-04-30 14:25 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-30  2:14 [PATCH v2 bpf-next] libbpf: fix false uninitialized variable warning Andrii Nakryiko
2020-04-30  8:13 ` Jakub Sitnicki
2020-04-30 14:25   ` Daniel Borkmann [this message]

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=327815ee-9a10-cab3-c8f8-8ceeafa0877f@iogearbox.net \
    --to=daniel@iogearbox.net \
    --cc=andrii.nakryiko@gmail.com \
    --cc=andriin@fb.com \
    --cc=ast@fb.com \
    --cc=bpf@vger.kernel.org \
    --cc=jakub@cloudflare.com \
    --cc=kernel-team@fb.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.