Thread (10 messages) 10 messages, 6 authors, 2019-03-01
STALE2660d REVIEWED: 1 (0M)

[PATCH v3] tools/libbpf: signedness bug in btf_dedup_ref_type()

From: Dan Carpenter <hidden>
Date: 2019-02-28 18:07:25
Also in: bpf, kernel-janitors
Subsystem: bpf [general] (safe dynamic programs and tools), bpf [library] (libbpf), the rest · Maintainers: Alexei Starovoitov, Daniel Borkmann, Andrii Nakryiko, Eduard Zingerman, Kumar Kartikeya Dwivedi, Linus Torvalds

The "ref_type_id" variable needs to be signed for the error handling
to work.

Fixes: d5caef5b5655 ("btf: add BTF types deduplication algorithm")
Signed-off-by: Dan Carpenter <redacted>
Acked-by: Andrii Nakryiko <redacted>
---
v2: Use reverse Christmas tree style
v3: Remove the bonus fix.

This goes through the BPF tree probably, although it does apply to
net-next.

 tools/lib/bpf/btf.c                      | 3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/tools/lib/bpf/btf.c b/tools/lib/bpf/btf.c
index 68b50e9bbde1..00a2f06e38fd 100644
--- a/tools/lib/bpf/btf.c
+++ b/tools/lib/bpf/btf.c
@@ -2326,7 +2326,8 @@ static int btf_dedup_ref_type(struct btf_dedup *d, __u32 type_id)
 	struct btf_type *t, *cand;
 	/* if we don't find equivalent type, then we are representative type */
 	__u32 new_id = type_id;
-	__u32 h, ref_type_id;
+	int ref_type_id;
+	__u32 h;
 
 	if (d->map[type_id] == BTF_IN_PROGRESS_ID)
 		return -ELOOP;
-- 
2.17.1
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help