mirror of
https://github.com/torvalds/linux.git
synced 2026-04-18 14:53:58 -04:00
selftests/bpf: Convert some selftests to high-level BPF map APIs
Convert a bunch of selftests to using newly added high-level BPF map APIs. This change exposed that map_kptr selftests allocated too big buffer, which is fixed in this patch as well. Signed-off-by: Andrii Nakryiko <andrii@kernel.org> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Link: https://lore.kernel.org/bpf/20220512220713.2617964-2-andrii@kernel.org
This commit is contained in:
committed by
Daniel Borkmann
parent
737d0646a8
commit
b2531d4bdc
@@ -8,7 +8,7 @@ void test_stacktrace_build_id(void)
|
||||
int control_map_fd, stackid_hmap_fd, stackmap_fd, stack_amap_fd;
|
||||
struct test_stacktrace_build_id *skel;
|
||||
int err, stack_trace_len;
|
||||
__u32 key, previous_key, val, duration = 0;
|
||||
__u32 key, prev_key, val, duration = 0;
|
||||
char buf[256];
|
||||
int i, j;
|
||||
struct bpf_stack_build_id id_offs[PERF_MAX_STACK_DEPTH];
|
||||
@@ -58,7 +58,7 @@ retry:
|
||||
"err %d errno %d\n", err, errno))
|
||||
goto cleanup;
|
||||
|
||||
err = bpf_map_get_next_key(stackmap_fd, NULL, &key);
|
||||
err = bpf_map__get_next_key(skel->maps.stackmap, NULL, &key, sizeof(key));
|
||||
if (CHECK(err, "get_next_key from stackmap",
|
||||
"err %d, errno %d\n", err, errno))
|
||||
goto cleanup;
|
||||
@@ -79,8 +79,8 @@ retry:
|
||||
if (strstr(buf, build_id) != NULL)
|
||||
build_id_matches = 1;
|
||||
}
|
||||
previous_key = key;
|
||||
} while (bpf_map_get_next_key(stackmap_fd, &previous_key, &key) == 0);
|
||||
prev_key = key;
|
||||
} while (bpf_map__get_next_key(skel->maps.stackmap, &prev_key, &key, sizeof(key)) == 0);
|
||||
|
||||
/* stack_map_get_build_id_offset() is racy and sometimes can return
|
||||
* BPF_STACK_BUILD_ID_IP instead of BPF_STACK_BUILD_ID_VALID;
|
||||
|
||||
Reference in New Issue
Block a user