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 <dan.carpen...@oracle.com>
---
This goes through the BPF tree probably, although it does apply to
net-next.

 tools/lib/bpf/btf.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tools/lib/bpf/btf.c b/tools/lib/bpf/btf.c
index 68b50e9bbde1..8faed5386124 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;
+       __u32 h;
+       int ref_type_id;
 
        if (d->map[type_id] == BTF_IN_PROGRESS_ID)
                return -ELOOP;
-- 
2.17.1

Reply via email to