On 4/7/22 9:38 AM, Yuntao Wang wrote:
The bpf_get_stackid() function may also return 0 on success.
Can you add couple of sentences to describe what this patch
does? bpf_get_stackid() may also return doesn't really say
anything about why this patch is needed.
Signed-off-by: Yuntao Wang <ytcoode@xxxxxxxxx>
---
tools/testing/selftests/bpf/progs/perf_event_stackmap.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tools/testing/selftests/bpf/progs/perf_event_stackmap.c b/tools/testing/selftests/bpf/progs/perf_event_stackmap.c
index b3fcb5274ee0..f793280a3238 100644
--- a/tools/testing/selftests/bpf/progs/perf_event_stackmap.c
+++ b/tools/testing/selftests/bpf/progs/perf_event_stackmap.c
@@ -35,10 +35,10 @@ int oncpu(void *ctx)
long val;
val = bpf_get_stackid(ctx, &stackmap, 0);
- if (val > 0)
+ if (val >= 0)
stackid_kernel = 2;
val = bpf_get_stackid(ctx, &stackmap, BPF_F_USER_STACK);
- if (val > 0)
+ if (val >= 0)
stackid_user = 2;
trace = bpf_map_lookup_elem(&stackdata_map, &key);
Linux 5.18-rc1 shows a couple of more bpf_get_stackid() in this function.
Removed in bpf-next - I assume.
The change is good. I would like to see it explained better in the
commit log.
With the commit log fixed to explain why this change is needed and
what happens if val equals to 0 condition isn't checked:
Reviewed-by: Shuah Khan <skhan@xxxxxxxxxxxxxxxxxxx>
thanks,
-- Shuah