selftests/bpf: Fix prog_tests uprobe_autoattach compilation error
I am getting the following compilation error for prog_tests/uprobe_autoattach.c:
tools/testing/selftests/bpf/prog_tests/uprobe_autoattach.c: In function ‘test_uprobe_autoattach’:
./test_progs.h:209:26: error: pointer ‘mem’ may be used after ‘free’ [-Werror=use-after-free]
The value of mem is now used in one of the asserts, which is why it may be
confusing compilers. However, it is not dereferenced. Silence this by moving
free(mem) after the assert block.
Fixes: 1717e24801
("selftests/bpf: Uprobe tests should verify param/return values")
Signed-off-by: Artem Savkov <asavkov@redhat.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Link: https://lore.kernel.org/bpf/20220421132317.1583867-1-asavkov@redhat.com
This commit is contained in:
parent
920fd5e177
commit
6a12b8e20d
|
@ -34,7 +34,6 @@ void test_uprobe_autoattach(void)
|
|||
|
||||
/* trigger & validate shared library u[ret]probes attached by name */
|
||||
mem = malloc(malloc_sz);
|
||||
free(mem);
|
||||
|
||||
ASSERT_EQ(skel->bss->uprobe_byname_parm1, trigger_val, "check_uprobe_byname_parm1");
|
||||
ASSERT_EQ(skel->bss->uprobe_byname_ran, 1, "check_uprobe_byname_ran");
|
||||
|
@ -44,6 +43,8 @@ void test_uprobe_autoattach(void)
|
|||
ASSERT_EQ(skel->bss->uprobe_byname2_ran, 3, "check_uprobe_byname2_ran");
|
||||
ASSERT_EQ(skel->bss->uretprobe_byname2_rc, mem, "check_uretprobe_byname2_rc");
|
||||
ASSERT_EQ(skel->bss->uretprobe_byname2_ran, 4, "check_uretprobe_byname2_ran");
|
||||
|
||||
free(mem);
|
||||
cleanup:
|
||||
test_uprobe_autoattach__destroy(skel);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue