Hello,

On 10/09/2024 16:13, Matthieu Baerts (NGI0) wrote:
> From: Geliang Tang <tanggeli...@kylinos.cn>
> 
> This patch adds a subtest named test_subflow in test_mptcp to load and
> verify the newly added MPTCP subflow BPF program. To goal is to make
> sure it is possible to set different socket options per subflows, while
> the userspace socket interface only lets the application to set the same
> socket options for the whole MPTCP connection and its multiple subflows.
> 
> To check that, a client and a server are started in a dedicated netns,
> with veth interfaces to simulate multiple paths. They will exchange data
> to allow the creation of an additional subflow.

(...)

> diff --git a/tools/testing/selftests/bpf/prog_tests/mptcp.c 
> b/tools/testing/selftests/bpf/prog_tests/mptcp.c
> index d2ca32fa3b21..c30f032edaca 100644
> --- a/tools/testing/selftests/bpf/prog_tests/mptcp.c
> +++ b/tools/testing/selftests/bpf/prog_tests/mptcp.c
> @@ -335,10 +339,132 @@ static void test_mptcpify(void)
>       close(cgroup_fd);
>  }

(...)

> +static void wait_for_new_subflows(int fd)
> +{
> +     socklen_t len;
> +     u8 subflows;
> +     int err, i;
> +
> +     len = sizeof(subflows);
> +     /* Wait max 1 sec for new subflows to be created */
> +     for (i = 0; i < 10; i++) {
> +             err = getsockopt(fd, SOL_MPTCP, MPTCP_INFO, &subflows, &len);
> +             if (!err && subflows > 0)
> +                     break;
> +
> +             sleep(0.1);

As reported by the CI, we are not in Python, usleep() should be used
here. I missed that one during my review. I will send a new version with
the fix tomorrow. Sorry for the noise.

Cheers,
Matt
-- 
Sponsored by the NGI0 Core fund.


Reply via email to