[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <f1d2d0fc-c541-4acc-b5d6-34f2bba37aea@gmail.com>
Date: Mon, 22 Sep 2025 10:42:44 +0800
From: Leon Hwang <hffilwlqm@...il.com>
To: Tao Chen <chen.dylane@...ux.dev>, ast@...nel.org, daniel@...earbox.net,
john.fastabend@...il.com, andrii@...nel.org, martin.lau@...ux.dev,
eddyz87@...il.com, song@...nel.org, yonghong.song@...ux.dev,
kpsingh@...nel.org, sdf@...ichev.me, haoluo@...gle.com, jolsa@...nel.org
Cc: bpf@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH bpf-next v3 2/2] selftests/bpf: Add stacktrace map
lookup_and_delete_elem test case
On 20/9/25 23:52, Tao Chen wrote:
> ...
> test_stacktrace_map:PASS:compare_stack_ips stackmap vs. stack_amap 0 nsec
> test_stacktrace_map:PASS:stack_key_map lookup 0 nsec
> test_stacktrace_map:PASS:stackmap lookup and detele 0 nsec
> test_stacktrace_map:PASS:stackmap lookup deleted stack_id 0 nsec
> #397 stacktrace_map:OK
> ...
As they suppose to pass, they are meaningless in the commit log.
Please describe what the test is for and what it is doing instead.
>
> Signed-off-by: Tao Chen <chen.dylane@...ux.dev>
> ---
> .../selftests/bpf/prog_tests/stacktrace_map.c | 22 ++++++++++++++++++-
> .../selftests/bpf/progs/test_stacktrace_map.c | 8 +++++++
> 2 files changed, 29 insertions(+), 1 deletion(-)
>
> diff --git a/tools/testing/selftests/bpf/prog_tests/stacktrace_map.c b/tools/testing/selftests/bpf/prog_tests/stacktrace_map.c
> index 84a7e405e91..7d38afe5cfc 100644
> --- a/tools/testing/selftests/bpf/prog_tests/stacktrace_map.c
> +++ b/tools/testing/selftests/bpf/prog_tests/stacktrace_map.c
> @@ -3,7 +3,7 @@
>
> void test_stacktrace_map(void)
> {
> - int control_map_fd, stackid_hmap_fd, stackmap_fd, stack_amap_fd;
> + int control_map_fd, stackid_hmap_fd, stackmap_fd, stack_amap_fd, stack_key_map_fd;
> const char *prog_name = "oncpu";
> int err, prog_fd, stack_trace_len;
> const char *file = "./test_stacktrace_map.bpf.o";
> @@ -11,6 +11,9 @@ void test_stacktrace_map(void)
> struct bpf_program *prog;
> struct bpf_object *obj;
> struct bpf_link *link;
> + __u32 stack_id;
> + char val_buf[PERF_MAX_STACK_DEPTH *
> + sizeof(struct bpf_stack_build_id)];
Nit: minor indentation issue here.
'val_buf' should stay on a single line, since up to 100 characters per
line are allowed.
NOTE: keep inverted Christmas tree style.
Thanks,
Leon
>
> err = bpf_prog_test_load(file, BPF_PROG_TYPE_TRACEPOINT, &obj, &prog_fd);
> if (CHECK(err, "prog_load", "err %d errno %d\n", err, errno))
> @@ -41,6 +44,10 @@ void test_stacktrace_map(void)
> if (CHECK_FAIL(stack_amap_fd < 0))
> goto disable_pmu;
>
> + stack_key_map_fd = bpf_find_map(__func__, obj, "stack_key_map");
> + if (CHECK_FAIL(stack_key_map_fd < 0))
> + goto disable_pmu;
> +
> /* give some time for bpf program run */
> sleep(1);
>
[...]
Powered by blists - more mailing lists