Skip to content

Commit 1ad93ab

Browse files
davem330Alexei Starovoitov
authored andcommitted
bpf: Fix various lib and testsuite build failures on 32-bit.
Cannot cast a u64 to a pointer on 32-bit without an intervening (long) cast otherwise GCC warns. Signed-off-by: David S. Miller <[email protected]> Acked-by: Song Liu <[email protected]> Signed-off-by: Alexei Starovoitov <[email protected]>
1 parent 295daee commit 1ad93ab

File tree

2 files changed

+6
-6
lines changed

2 files changed

+6
-6
lines changed

tools/lib/bpf/btf.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -466,7 +466,7 @@ int btf__get_from_id(__u32 id, struct btf **btf)
466466
goto exit_free;
467467
}
468468

469-
*btf = btf__new((__u8 *)btf_info.btf, btf_info.btf_size, NULL);
469+
*btf = btf__new((__u8 *)(long)btf_info.btf, btf_info.btf_size, NULL);
470470
if (IS_ERR(*btf)) {
471471
err = PTR_ERR(*btf);
472472
*btf = NULL;

tools/testing/selftests/bpf/test_progs.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -524,7 +524,7 @@ static void test_bpf_obj_id(void)
524524
load_time < now - 60 || load_time > now + 60 ||
525525
prog_infos[i].created_by_uid != my_uid ||
526526
prog_infos[i].nr_map_ids != 1 ||
527-
*(int *)prog_infos[i].map_ids != map_infos[i].id ||
527+
*(int *)(long)prog_infos[i].map_ids != map_infos[i].id ||
528528
strcmp((char *)prog_infos[i].name, expected_prog_name),
529529
"get-prog-info(fd)",
530530
"err %d errno %d i %d type %d(%d) info_len %u(%Zu) jit_enabled %d jited_prog_len %u xlated_prog_len %u jited_prog %d xlated_prog %d load_time %lu(%lu) uid %u(%u) nr_map_ids %u(%u) map_id %u(%u) name %s(%s)\n",
@@ -539,7 +539,7 @@ static void test_bpf_obj_id(void)
539539
load_time, now,
540540
prog_infos[i].created_by_uid, my_uid,
541541
prog_infos[i].nr_map_ids, 1,
542-
*(int *)prog_infos[i].map_ids, map_infos[i].id,
542+
*(int *)(long)prog_infos[i].map_ids, map_infos[i].id,
543543
prog_infos[i].name, expected_prog_name))
544544
goto done;
545545
}
@@ -585,20 +585,20 @@ static void test_bpf_obj_id(void)
585585
bzero(&prog_info, sizeof(prog_info));
586586
info_len = sizeof(prog_info);
587587

588-
saved_map_id = *(int *)(prog_infos[i].map_ids);
588+
saved_map_id = *(int *)((long)prog_infos[i].map_ids);
589589
prog_info.map_ids = prog_infos[i].map_ids;
590590
prog_info.nr_map_ids = 2;
591591
err = bpf_obj_get_info_by_fd(prog_fd, &prog_info, &info_len);
592592
prog_infos[i].jited_prog_insns = 0;
593593
prog_infos[i].xlated_prog_insns = 0;
594594
CHECK(err || info_len != sizeof(struct bpf_prog_info) ||
595595
memcmp(&prog_info, &prog_infos[i], info_len) ||
596-
*(int *)prog_info.map_ids != saved_map_id,
596+
*(int *)(long)prog_info.map_ids != saved_map_id,
597597
"get-prog-info(next_id->fd)",
598598
"err %d errno %d info_len %u(%Zu) memcmp %d map_id %u(%u)\n",
599599
err, errno, info_len, sizeof(struct bpf_prog_info),
600600
memcmp(&prog_info, &prog_infos[i], info_len),
601-
*(int *)prog_info.map_ids, saved_map_id);
601+
*(int *)(long)prog_info.map_ids, saved_map_id);
602602
close(prog_fd);
603603
}
604604
CHECK(nr_id_found != nr_iters,

0 commit comments

Comments
 (0)