> diff --git a/tools/testing/selftests/bpf/progs/rbtree_search_kptr.c 
> b/tools/testing/selftests/bpf/progs/rbtree_search_kptr.c
> new file mode 100644
> index 0000000000..1345c7f441
> --- /dev/null
> +++ b/tools/testing/selftests/bpf/progs/rbtree_search_kptr.c

[ ... ]

> +     bpf_spin_unlock(&lock);
> +
> +     rb_n = NULL;
> +     while (rb_n && can_loop) {

rb_n is set to NULL on the line above, so the while condition
(rb_n && can_loop) is immediately false and the loop body is skipped.

Should this be something like:

        rb_n = (void *)1;
        while (rb_n && can_loop) {
                bpf_spin_lock(&lock);
                rb_n = bpf_rbtree_first(&root);

to ensure the cleanup loop actually runs?


---
AI reviewed your patch. Please fix the bug or email reply why it's not a bug.
See: https://github.com/kernel-patches/vmtest/blob/master/ci/claude/README.md

CI run summary: https://github.com/kernel-patches/bpf/actions/runs/21579259592

AI-authorship-score: low
AI-authorship-explanation: The code contains a simple human error (dead loop 
due to typo) that an AI would be unlikely to produce; the pattern and style 
match existing human-written selftests in the same directory.
issues-found: 1
issue-severity-score: low
issue-severity-explanation: Dead code in cleanup loop prevents node removal in 
a selftest; test passes but does not perform the cleanup described in the 
commit message.

Reply via email to