Fix "warning: cast to pointer from integer of different size" when
casting u64 addr to void *.

Fixes: a23740ec43ba ("bpf: Track contents of read-only maps as scalars")
Reported-by: kbuild test robot <l...@intel.com>
Acked-by: Martin KaFai Lau <ka...@fb.com>
Signed-off-by: Andrii Nakryiko <andr...@fb.com>
---
 kernel/bpf/verifier.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/bpf/verifier.c b/kernel/bpf/verifier.c
index b818fed3208d..d3446f018b9a 100644
--- a/kernel/bpf/verifier.c
+++ b/kernel/bpf/verifier.c
@@ -2753,7 +2753,7 @@ static int bpf_map_direct_read(struct bpf_map *map, int 
off, int size, u64 *val)
        err = map->ops->map_direct_value_addr(map, &addr, off);
        if (err)
                return err;
-       ptr = (void *)addr + off;
+       ptr = (void *)(long)addr + off;
 
        switch (size) {
        case sizeof(u8):
-- 
2.17.1

Reply via email to