Commit 43174f0d authored by Alan Maguire's avatar Alan Maguire Committed by Andrii Nakryiko

libbpf: Silence uninitialized warning/error in btf_dump_dump_type_data

When compiling libbpf with gcc 4.8.5, we see:

  CC       staticobjs/btf_dump.o
btf_dump.c: In function ‘btf_dump_dump_type_data.isra.24’:
btf_dump.c:2296:5: error: ‘err’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
  if (err < 0)
     ^
cc1: all warnings being treated as errors
make: *** [staticobjs/btf_dump.o] Error 1

While gcc 4.8.5 is too old to build the upstream kernel, it's possible it
could be used to build standalone libbpf which suffers from the same problem.
Silence the error by initializing 'err' to 0.  The warning/error seems to be
a false positive since err is set early in the function.  Regardless we
shouldn't prevent libbpf from building for this.

Fixes: 920d16af ("libbpf: BTF dumper support for typed data")
Signed-off-by: default avatarAlan Maguire <alan.maguire@oracle.com>
Signed-off-by: default avatarAndrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/1638180040-8037-1-git-send-email-alan.maguire@oracle.com
parent da61e9e3
...@@ -2216,7 +2216,7 @@ static int btf_dump_dump_type_data(struct btf_dump *d, ...@@ -2216,7 +2216,7 @@ static int btf_dump_dump_type_data(struct btf_dump *d,
__u8 bits_offset, __u8 bits_offset,
__u8 bit_sz) __u8 bit_sz)
{ {
int size, err; int size, err = 0;
size = btf_dump_type_data_check_overflow(d, t, id, data, bits_offset); size = btf_dump_type_data_check_overflow(d, t, id, data, bits_offset);
if (size < 0) if (size < 0)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment