aboutsummaryrefslogtreecommitdiffstats
path: root/tools/lib
diff options
context:
space:
mode:
authorAlan Maguire <alan.maguire@oracle.com>2021-07-20 09:49:53 +0100
committerAndrii Nakryiko <andrii@kernel.org>2021-07-20 13:49:25 -0700
commit720c29fca9fb87c473148ff666b75314420cdda6 (patch)
treef4b361833faca06c98dad5083ee32277498c23a6 /tools/lib
parentselftests/bpf: Add __int128-specific tests for typed data dump (diff)
downloadlinux-dev-720c29fca9fb87c473148ff666b75314420cdda6.tar.xz
linux-dev-720c29fca9fb87c473148ff666b75314420cdda6.zip
libbpf: Propagate errors when retrieving enum value for typed data display
When retrieving the enum value associated with typed data during "is data zero?" checking in btf_dump_type_data_check_zero(), the return value of btf_dump_get_enum_value() is not passed to the caller if the function returns a non-zero (error) value. Currently, 0 is returned if the function returns an error. We should instead propagate the error to the caller. Signed-off-by: Alan Maguire <alan.maguire@oracle.com> Signed-off-by: Andrii Nakryiko <andrii@kernel.org> Link: https://lore.kernel.org/bpf/1626770993-11073-4-git-send-email-alan.maguire@oracle.com
Diffstat (limited to 'tools/lib')
-rw-r--r--tools/lib/bpf/btf_dump.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/tools/lib/bpf/btf_dump.c b/tools/lib/bpf/btf_dump.c
index d52e546a515c..e4b483f15fb9 100644
--- a/tools/lib/bpf/btf_dump.c
+++ b/tools/lib/bpf/btf_dump.c
@@ -2166,8 +2166,9 @@ static int btf_dump_type_data_check_zero(struct btf_dump *d,
return -ENODATA;
}
case BTF_KIND_ENUM:
- if (btf_dump_get_enum_value(d, t, data, id, &value))
- return 0;
+ err = btf_dump_get_enum_value(d, t, data, id, &value);
+ if (err)
+ return err;
if (value == 0)
return -ENODATA;
return 0;