From: Martin KaFai Lau <martin.lau@linux.dev>
To: Eyal Birger <eyal.birger@gmail.com>
Cc: netdev@vger.kernel.org, bpf@vger.kernel.org,
linux-kselftest@vger.kernel.org, davem@davemloft.net,
edumazet@google.com, kuba@kernel.org, pabeni@redhat.com,
steffen.klassert@secunet.com, herbert@gondor.apana.org.au,
andrii@kernel.org, daniel@iogearbox.net,
nicolas.dichtel@6wind.com, razor@blackwall.org, mykolal@fb.com,
ast@kernel.org, song@kernel.org, yhs@fb.com,
john.fastabend@gmail.com, kpsingh@kernel.org, sdf@google.com,
haoluo@google.com, jolsa@kernel.org, shuah@kernel.org,
liuhangbin@gmail.com, lixiaoyan@google.com, jtoppins@redhat.com,
kuniyu@amazon.co.jp
Subject: Re: [PATCH bpf-next,v6 4/4] selftests/bpf: add xfrm_info tests
Date: Mon, 5 Dec 2022 23:13:12 -0800 [thread overview]
Message-ID: <1892a6ce-bbad-20af-20b4-cc23fb7a6206@linux.dev> (raw)
In-Reply-To: <20221203084659.1837829-5-eyal.birger@gmail.com>
On 12/3/22 12:46 AM, Eyal Birger wrote:
> +#define PING_ARGS "-i 0.01 -c 3 -w 10 -q"
Applied with a few changes.
PING_ARGS is removed because it is unused.
[ ... ]
> +static int test_xfrm_ping(struct xfrm_info *skel, u32 if_id)
> +{
> + skel->bss->req_if_id = if_id;
> +
> + SYS("ping -i 0.01 -c 3 -w 10 -q 192.168.1.200 > /dev/null");
> +
> + if (!ASSERT_EQ(skel->bss->resp_if_id, if_id, "if_id"))
> + goto fail;
> +
> + return 0;
> +fail:
> + return -1;
> +}
> +
> +static void _test_xfrm_info(void)
> +{
> + LIBBPF_OPTS(bpf_tc_hook, tc_hook, .attach_point = BPF_TC_INGRESS);
> + int get_xfrm_info_prog_fd, set_xfrm_info_prog_fd;
> + struct xfrm_info *skel = NULL;
> + struct nstoken *nstoken = NULL;
> + int ifindex;
> +
> + /* load and attach bpf progs to ipsec dev tc hook point */
> + skel = xfrm_info__open_and_load();
> + if (!ASSERT_OK_PTR(skel, "xfrm_info__open_and_load"))
> + goto done;
> + nstoken = open_netns(NS0);
> + if (!ASSERT_OK_PTR(nstoken, "setns " NS0))
> + goto done;
> + ifindex = if_nametoindex("ipsec0");
> + if (!ASSERT_NEQ(ifindex, 0, "ipsec0 ifindex"))
> + goto done;
> + tc_hook.ifindex = ifindex;
> + set_xfrm_info_prog_fd = bpf_program__fd(skel->progs.set_xfrm_info);
> + get_xfrm_info_prog_fd = bpf_program__fd(skel->progs.get_xfrm_info);
> + if (!ASSERT_GE(set_xfrm_info_prog_fd, 0, "bpf_program__fd"))
> + goto done;
> + if (!ASSERT_GE(get_xfrm_info_prog_fd, 0, "bpf_program__fd"))
> + goto done;
> + if (attach_tc_prog(&tc_hook, get_xfrm_info_prog_fd,
> + set_xfrm_info_prog_fd))
> + goto done;
> +
> + /* perform test */
> + if (!ASSERT_EQ(test_xfrm_ping(skel, IF_ID_0_TO_1), 0, "ping " NS1))
> + goto done;
> + if (!ASSERT_EQ(test_xfrm_ping(skel, IF_ID_0_TO_2), 0, "ping " NS2))
> + goto done;
> +
> +done:
> + if (nstoken)
> + close_netns(nstoken);
> + if (skel)
NULL check is removed. xfrm_info__destroy() can handle NULL.
> + xfrm_info__destroy(skel);
> +}
next prev parent reply other threads:[~2022-12-06 7:13 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-03 8:46 [PATCH bpf-next,v6 0/4] xfrm: interface: Add unstable helpers for XFRM metadata Eyal Birger
2022-12-03 8:46 ` [PATCH bpf-next,v6 1/4] xfrm: interface: rename xfrm_interface.c to xfrm_interface_core.c Eyal Birger
2022-12-03 8:46 ` [PATCH bpf-next,v6 2/4] xfrm: interface: Add unstable helpers for setting/getting XFRM metadata from TC-BPF Eyal Birger
2022-12-03 8:46 ` [PATCH bpf-next,v6 3/4] tools: add IFLA_XFRM_COLLECT_METADATA to uapi/linux/if_link.h Eyal Birger
2022-12-03 8:46 ` [PATCH bpf-next,v6 4/4] selftests/bpf: add xfrm_info tests Eyal Birger
2022-12-06 7:13 ` Martin KaFai Lau [this message]
2022-12-06 7:10 ` [PATCH bpf-next,v6 0/4] xfrm: interface: Add unstable helpers for XFRM metadata patchwork-bot+netdevbpf
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1892a6ce-bbad-20af-20b4-cc23fb7a6206@linux.dev \
--to=martin.lau@linux.dev \
--cc=andrii@kernel.org \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=eyal.birger@gmail.com \
--cc=haoluo@google.com \
--cc=herbert@gondor.apana.org.au \
--cc=john.fastabend@gmail.com \
--cc=jolsa@kernel.org \
--cc=jtoppins@redhat.com \
--cc=kpsingh@kernel.org \
--cc=kuba@kernel.org \
--cc=kuniyu@amazon.co.jp \
--cc=linux-kselftest@vger.kernel.org \
--cc=liuhangbin@gmail.com \
--cc=lixiaoyan@google.com \
--cc=mykolal@fb.com \
--cc=netdev@vger.kernel.org \
--cc=nicolas.dichtel@6wind.com \
--cc=pabeni@redhat.com \
--cc=razor@blackwall.org \
--cc=sdf@google.com \
--cc=shuah@kernel.org \
--cc=song@kernel.org \
--cc=steffen.klassert@secunet.com \
--cc=yhs@fb.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox