[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3BFB4741-22F2-4CBC-8FB4-9988DEE7E25A@meta.com>
Date: Fri, 10 May 2024 19:21:49 +0000
From: Manu Bretelle <chantra@...a.com>
To: Alexei Starovoitov <alexei.starovoitov@...il.com>,
Matthieu Baerts
<matttbe@...nel.org>
CC: "mptcp@...ts.linux.dev" <mptcp@...ts.linux.dev>,
Mat Martineau
<martineau@...nel.org>,
Geliang Tang <geliang@...nel.org>,
Andrii Nakryiko
<andrii@...nel.org>,
Eduard Zingerman <eddyz87@...il.com>,
Mykola Lysenko
<mykolal@...a.com>,
Alexei Starovoitov <ast@...nel.org>,
Daniel Borkmann
<daniel@...earbox.net>,
Martin KaFai Lau <martin.lau@...ux.dev>, Song Liu
<song@...nel.org>,
Yonghong Song <yonghong.song@...ux.dev>,
John Fastabend
<john.fastabend@...il.com>,
KP Singh <kpsingh@...nel.org>, Stanislav Fomichev
<sdf@...gle.com>,
Hao Luo <haoluo@...gle.com>, Jiri Olsa <jolsa@...nel.org>,
Shuah Khan <shuah@...nel.org>,
"linux-kernel@...r.kernel.org"
<linux-kernel@...r.kernel.org>,
"netdev@...r.kernel.org"
<netdev@...r.kernel.org>,
"bpf@...r.kernel.org" <bpf@...r.kernel.org>,
"linux-kselftest@...r.kernel.org" <linux-kselftest@...r.kernel.org>,
Geliang
Tang <tanggeliang@...inos.cn>
Subject: Re: [PATCH bpf-next v2 2/2] selftests/bpf: Add mptcp subflow subtest
On 5/10/24, 7:06 AM, "Alexei Starovoitov" <alexei.starovoitov@...il.com <mailto:alexei.starovoitov@...il.com>> wrote:
!-------------------------------------------------------------------|
This Message Is From an External Sender
|-------------------------------------------------------------------!
On Thu, May 9, 2024 at 11:31 AM Matthieu Baerts <matttbe@...nel.org <mailto:matttbe@...nel.org>> wrote:
>
> Hello,
>
> On 09/05/2024 17:49, Matthieu Baerts (NGI0) wrote:
> > From: Geliang Tang <tanggeliang@...inos.cn <mailto:tanggeliang@...inos.cn>>
> >
> > This patch adds a subtest named test_subflow to load and verify the newly
> > added mptcp subflow example in test_mptcp. Add a helper endpoint_init()
> > to add a new subflow endpoint. Add another helper ss_search() to verify the
> > fwmark and congestion values set by mptcp_subflow prog using setsockopts.
> >
> > Closes: https://github.com/multipath-tcp/mptcp_net-next/issues/76 <https://github.com/multipath-tcp/mptcp_net-next/issues/76>
> > Signed-off-by: Geliang Tang <tanggeliang@...inos.cn <mailto:tanggeliang@...inos.cn>>
> > Reviewed-by: Mat Martineau <martineau@...nel.org <mailto:martineau@...nel.org>>
> > Signed-off-by: Matthieu Baerts (NGI0) <matttbe@...nel.org <mailto:matttbe@...nel.org>>
> > ---
> > tools/testing/selftests/bpf/prog_tests/mptcp.c | 109 +++++++++++++++++++++++++
> > 1 file changed, 109 insertions(+)
> >
> > diff --git a/tools/testing/selftests/bpf/prog_tests/mptcp.c b/tools/testing/selftests/bpf/prog_tests/mptcp.c
> > index 274d2e033e39..6039b0ff3801 100644
> > --- a/tools/testing/selftests/bpf/prog_tests/mptcp.c
> > +++ b/tools/testing/selftests/bpf/prog_tests/mptcp.c
>
> (...)
>
> > @@ -340,10 +344,115 @@ static void test_mptcpify(void)
> > close(cgroup_fd);
> > }
> >
> > +static int endpoint_init(char *flags)
> > +{
> > + SYS(fail, "ip -net %s link add veth1 type veth peer name veth2", NS_TEST);
> > + SYS(fail, "ip -net %s addr add %s/24 dev veth1", NS_TEST, ADDR_1);
> > + SYS(fail, "ip -net %s link set dev veth1 up", NS_TEST);
> > + SYS(fail, "ip -net %s addr add %s/24 dev veth2", NS_TEST, ADDR_2);
> > + SYS(fail, "ip -net %s link set dev veth2 up", NS_TEST);
> > + SYS(fail, "ip -net %s mptcp endpoint add %s %s", NS_TEST, ADDR_2, flags);
>
> I just noticed that this command is failing on the BPF CI:
>
> https://github.com/kernel-patches/bpf/actions/runs/9020020315?pr=7009 <https://github.com/kernel-patches/bpf/actions/runs/9020020315?pr=7009>
>
> Is it possible that an old version of IPRoute2 is installed?
> 'ip mptcp' is supported since v5.8.0 (from 2020).
>
> It looks like Ubuntu Focal 20.04 is being used, which has the v5.5.0. Do
> we then need to find another way to set the MPTCP endpoints?
Manu, any idea?
// retrying plain text format.... please outlook, please, make this happen!
Indeed, this is running Ubuntu 20.04. I am planning to eventually update to 22.04 (which has iproute 5.15),
But I don’t have a good ETA to give other than this is not going to be in the coming month.
It does not seem that iproute provides an easy way to check its version, and the version returned by the container is:
root@...a02e57175:/actions-runner# ip --json -V
ip utility, iproute2-ss200127
root@...a02e57175:/actions-runner# dpkg -l iproute2
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============-==============-============-====================================
ii iproute2 5.5.0-1ubuntu1 amd64 networking and traffic control tools
How complicated is it to set MPTCP directly using netlink following https://github.com/iproute2/iproute2/blob/397383a30c3b0e3ff551042b6654898a0872b83e/ip/ipmptcp.c#L573 ?
Seems tools/testing/selftests/bpf/netlink_helpers.c could be useful to deal with the netlink part. And the former link to find out how to format the message?
Manu
Powered by blists - more mailing lists