OSDN Git Service

bpf: Fix cast to pointer from integer of different size warning
authorAndrii Nakryiko <andriin@fb.com>
Fri, 11 Oct 2019 17:20:53 +0000 (10:20 -0700)
committerDaniel Borkmann <daniel@iogearbox.net>
Fri, 11 Oct 2019 20:28:47 +0000 (22:28 +0200)
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 <lkp@intel.com>
Signed-off-by: Andrii Nakryiko <andriin@fb.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Martin KaFai Lau <kafai@fb.com>
Link: https://lore.kernel.org/bpf/20191011172053.2980619-1-andriin@fb.com
kernel/bpf/verifier.c

index b818fed..d3446f0 100644 (file)
@@ -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):