@@ -19,6 +19,7 @@ static struct {
{"rb_node__two_alloc_one_add", "Unreleased reference id=2 alloc_insn=3"},
{"rb_node__remove_no_free", "Unreleased reference id=6 alloc_insn=26"},
{"rb_tree__add_wrong_type", "rbtree: R2 is of type task_struct but node_data is expected"},
+ {"add_node__no_lock", "lock associated with rbtree is not held"},
{"rb_tree__conditional_release_helper_usage",
"R2 type=ptr_cond_rel_ expected=ptr_"},
};
@@ -96,37 +97,6 @@ void test_rbtree_map_alloc_node__size_too_small(void)
rbtree_map_fail__destroy(skel);
}
-void test_rbtree_map_add_node__no_lock(void)
-{
- struct rbtree_map_fail *skel;
- struct bpf_program *prog;
- struct bpf_link *link;
- int err;
-
- skel = rbtree_map_fail__open();
- if (!ASSERT_OK_PTR(skel, "rbtree_map_fail__open"))
- goto cleanup;
-
- prog = skel->progs.add_node__no_lock;
- bpf_program__set_autoload(prog, true);
-
- err = rbtree_map_fail__load(skel);
- if (!ASSERT_OK(err, "unexpected load fail"))
- goto cleanup;
-
- link = bpf_program__attach(skel->progs.add_node__no_lock);
- if (!ASSERT_OK_PTR(link, "link"))
- goto cleanup;
-
- syscall(SYS_getpgid);
-
- ASSERT_EQ(skel->bss->no_lock_add__fail, 1, "alloc_fail");
-
- bpf_link__destroy(link);
-cleanup:
- rbtree_map_fail__destroy(skel);
-}
-
void test_rbtree_map_prog_load_fail(void)
{
int i;
These are test chagnes corresponding to commit "bpf: Check rbtree lock held during verification". They should be squashed with other test changes, but are left unsquashed as part of RFCv2 to ease tossing them piecemeal if associated functionality is dropped. Signed-off-by: Dave Marchevsky <davemarchevsky@fb.com> --- .../selftests/bpf/prog_tests/rbtree_map.c | 32 +------------------ 1 file changed, 1 insertion(+), 31 deletions(-)