mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-03-22 07:27:12 +08:00
selftests/bpf: ns_current_pid_tgid: Use test_progs's ns_ feature
Two subtests use the test_in_netns() function to run the test in a dedicated network namespace. This can now be done directly through the test_progs framework with a test name starting with 'ns_'. Replace the use of test_in_netns() by test_ns_* calls. Signed-off-by: Bastien Curutchet (eBPF Foundation) <bastien.curutchet@bootlin.com> Link: https://lore.kernel.org/r/20250219-b4-tc_links-v2-4-14504db136b7@bootlin.com Signed-off-by: Alexei Starovoitov <ast@kernel.org>
This commit is contained in:
committed by
Alexei Starovoitov
parent
207cd7578a
commit
157feaaf18
@@ -200,25 +200,6 @@ static void test_ns_current_pid_tgid_new_ns(int (*fn)(void *), void *arg)
|
||||
return;
|
||||
}
|
||||
|
||||
static void test_in_netns(int (*fn)(void *), void *arg)
|
||||
{
|
||||
struct nstoken *nstoken = NULL;
|
||||
|
||||
SYS(cleanup, "ip netns add ns_current_pid_tgid");
|
||||
SYS(cleanup, "ip -net ns_current_pid_tgid link set dev lo up");
|
||||
|
||||
nstoken = open_netns("ns_current_pid_tgid");
|
||||
if (!ASSERT_OK_PTR(nstoken, "open_netns"))
|
||||
goto cleanup;
|
||||
|
||||
test_ns_current_pid_tgid_new_ns(fn, arg);
|
||||
|
||||
cleanup:
|
||||
if (nstoken)
|
||||
close_netns(nstoken);
|
||||
SYS_NOFAIL("ip netns del ns_current_pid_tgid");
|
||||
}
|
||||
|
||||
/* TODO: use a different tracepoint */
|
||||
void serial_test_current_pid_tgid(void)
|
||||
{
|
||||
@@ -226,15 +207,21 @@ void serial_test_current_pid_tgid(void)
|
||||
test_current_pid_tgid_tp(NULL);
|
||||
if (test__start_subtest("new_ns_tp"))
|
||||
test_ns_current_pid_tgid_new_ns(test_current_pid_tgid_tp, NULL);
|
||||
if (test__start_subtest("new_ns_cgrp")) {
|
||||
int cgroup_fd = -1;
|
||||
|
||||
cgroup_fd = test__join_cgroup("/sock_addr");
|
||||
if (ASSERT_GE(cgroup_fd, 0, "join_cgroup")) {
|
||||
test_in_netns(test_current_pid_tgid_cgrp, &cgroup_fd);
|
||||
close(cgroup_fd);
|
||||
}
|
||||
}
|
||||
if (test__start_subtest("new_ns_sk_msg"))
|
||||
test_in_netns(test_current_pid_tgid_sk_msg, NULL);
|
||||
}
|
||||
|
||||
void test_ns_current_pid_tgid_cgrp(void)
|
||||
{
|
||||
int cgroup_fd = test__join_cgroup("/sock_addr");
|
||||
|
||||
if (ASSERT_OK_FD(cgroup_fd, "join_cgroup")) {
|
||||
test_ns_current_pid_tgid_new_ns(test_current_pid_tgid_cgrp, &cgroup_fd);
|
||||
close(cgroup_fd);
|
||||
}
|
||||
}
|
||||
|
||||
void test_ns_current_pid_tgid_sk_msg(void)
|
||||
{
|
||||
test_ns_current_pid_tgid_new_ns(test_current_pid_tgid_sk_msg, NULL);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user