MPTCP Linux Development
 help / color / mirror / Atom feed
From: Mat Martineau <martineau@kernel.org>
To: "Matthieu Baerts (NGI0)" <matttbe@kernel.org>
Cc: MPTCP Upstream <mptcp@lists.linux.dev>
Subject: Re: [PATCH mptcp-net 2/3] selftests: mptcp: pm: ensure unknown flags are ignored
Date: Wed, 26 Nov 2025 15:57:34 -0800 (PST)	[thread overview]
Message-ID: <34dd0312-6eb7-b56d-b7e4-06837bc4c50c@kernel.org> (raw)
In-Reply-To: <20251126-mptcp-pm-kern-drop-unknown-flags-v1-2-d2e4c2ebce0c@kernel.org>

On Wed, 26 Nov 2025, Matthieu Baerts (NGI0) wrote:

> This validates the previous commit: the userspace can set unknown flags
> -- the 7th bit is currently unused -- without errors, but only the
> supported ones are printed in the endpoints dumps.
>
> The 'Fixes' tag here below is the same as the one from the previous
> commit: this patch here is not fixing anything wrong in the selftests,
> but it validates the previous fix for an issue introduced by this commit
> ID.
>
> Fixes: 01cacb00b35c ("mptcp: add netlink-based PM")
> Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
> ---
> tools/testing/selftests/net/mptcp/pm_netlink.sh |  4 ++++
> tools/testing/selftests/net/mptcp/pm_nl_ctl.c   | 11 +++++++++++
> 2 files changed, 15 insertions(+)
>
> diff --git a/tools/testing/selftests/net/mptcp/pm_netlink.sh b/tools/testing/selftests/net/mptcp/pm_netlink.sh
> index ec6a87588191..123d9d7a0278 100755
> --- a/tools/testing/selftests/net/mptcp/pm_netlink.sh
> +++ b/tools/testing/selftests/net/mptcp/pm_netlink.sh
> @@ -192,6 +192,10 @@ check "show_endpoints" \
> flush_endpoint
> check "show_endpoints" "" "flush addrs"
>
> +add_endpoint 10.0.1.1 flags unknown
> +check "show_endpoints" "$(format_endpoints "1,10.0.1.1")" "ignore unknown flags"
> +flush_endpoint
> +
> set_limits 9 1 2>/dev/null
> check "get_limits" "${default_limits}" "rcv addrs above hard limit"
>
> diff --git a/tools/testing/selftests/net/mptcp/pm_nl_ctl.c b/tools/testing/selftests/net/mptcp/pm_nl_ctl.c
> index 65b374232ff5..99eecccbf0c8 100644
> --- a/tools/testing/selftests/net/mptcp/pm_nl_ctl.c
> +++ b/tools/testing/selftests/net/mptcp/pm_nl_ctl.c
> @@ -24,6 +24,8 @@
> #define IPPROTO_MPTCP 262
> #endif
>
> +#define MPTCP_PM_ADDR_FLAG_UNKNOWN _BITUL(7)

Given the u8->u32 change in patch 3, I can see why this needs to be 7 for 
this patch to be meaningful for -net.

Can you add a patch 4 that updates this to _BITUL(31) to match up with 
the internal flag representation change?

Thanks,
Mat

> +
> static void syntax(char *argv[])
> {
> 	fprintf(stderr, "%s add|ann|rem|csf|dsf|get|set|del|flush|dump|events|listen|accept [<args>]\n", argv[0]);
> @@ -836,6 +838,8 @@ int add_addr(int fd, int pm_family, int argc, char *argv[])
> 					flags |= MPTCP_PM_ADDR_FLAG_BACKUP;
> 				else if (!strcmp(tok, "fullmesh"))
> 					flags |= MPTCP_PM_ADDR_FLAG_FULLMESH;
> +				else if (!strcmp(tok, "unknown"))
> +					flags |= MPTCP_PM_ADDR_FLAG_UNKNOWN;
> 				else
> 					error(1, errno,
> 					      "unknown flag %s", argv[arg]);
> @@ -1048,6 +1052,13 @@ static void print_addr(struct rtattr *attrs, int len)
> 					printf(",");
> 			}
>
> +			if (flags & MPTCP_PM_ADDR_FLAG_UNKNOWN) {
> +				printf("unknown");
> +				flags &= ~MPTCP_PM_ADDR_FLAG_UNKNOWN;
> +				if (flags)
> +					printf(",");
> +			}
> +
> 			/* bump unknown flags, if any */
> 			if (flags)
> 				printf("0x%x", flags);
>
> -- 
> 2.51.0
>
>
>

  reply	other threads:[~2025-11-26 23:57 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-11-26 18:31 [PATCH mptcp-net 0/3] mptcp: pm: ignore unknown endpoint flags Matthieu Baerts (NGI0)
2025-11-26 18:31 ` [PATCH mptcp-net 1/3] " Matthieu Baerts (NGI0)
2025-11-26 18:31 ` [PATCH mptcp-net 2/3] selftests: mptcp: pm: ensure unknown flags are ignored Matthieu Baerts (NGI0)
2025-11-26 23:57   ` Mat Martineau [this message]
2025-11-27 14:57     ` Matthieu Baerts
2025-11-26 18:31 ` [PATCH mptcp-net 3/3] mptcp: pm: align endpoint flags size with the NL specs Matthieu Baerts (NGI0)
2025-11-26 19:52 ` [PATCH mptcp-net 0/3] mptcp: pm: ignore unknown endpoint flags MPTCP CI
2025-11-26 23:54 ` Mat Martineau
2025-11-27 15:07   ` Matthieu Baerts

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=34dd0312-6eb7-b56d-b7e4-06837bc4c50c@kernel.org \
    --to=martineau@kernel.org \
    --cc=matttbe@kernel.org \
    --cc=mptcp@lists.linux.dev \
    /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