Netdev List
 help / color / mirror / Atom feed
From: Andrea Mayer <andrea.mayer@uniroma2.it>
To: Hangbin Liu <hangbin.liu@linux.dev>
Cc: "David S. Miller" <davem@davemloft.net>,
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
	Simon Horman <horms@kernel.org>, Shuah Khan <shuah@kernel.org>,
	Eric Dumazet <edumazet@kernel.org>,
	netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-kselftest@vger.kernel.org,
	Hangbin Liu <liuhangbin@kylinos.cn>,
	stefano.salsano@uniroma2.it,
	Andrea Mayer <andrea.mayer@uniroma2.it>,
	andrea@common-net.org
Subject: Re: [PATCH net-next v2 2/5] seg6: add RFC8986 flavor support for End.X
Date: Mon, 12 Oct 2026 02:59:00 +0200	[thread overview]
Message-ID: <20261012025900.c2321bfa92c5863d21efdba3@uniroma2.it> (raw)
In-Reply-To: <20261009-srv6_flavors_endx-v2-2-56ac7f838f41@kylinos.cn>

On Fri, 09 Oct 2026 17:58:38 +0800
Hangbin Liu <hangbin.liu@linux.dev> wrote:

> From: Hangbin Liu <liuhangbin@kylinos.cn>
> 
> Previously End.X only supported NEXT-C-SID, with a plain fallback to
> input_action_end_x_core(). Add PSP End.X processing by reusing
> end_flv8986_core().
> 
> Add SEG6_LOCAL_FLV8986_SUPP_OPS to SEG6_LOCAL_END_X_FLV_SUPP_OPS so
> End.X advertises PSP flavor support.
> 
> Signed-off-by: Hangbin Liu <liuhangbin@kylinos.cn>
> ---
> 
> For Sashiko:
> 
> With the SEG6_LOCAL_END_X_FLV_SUPP_OPS mask widened, parse_nla_flavors()
> now accept the combination next-csid plus psp for an End.X instance. And
> the current code is unable to handle this combination. The End instance
> also has this issue. Andrea is preparing a fix for this bug.

Hi Hangbin,

thanks for v2, and for your work.

The End fix is now posted, to net-next and not to net as I wrote on
v1, since the issues it fixes have been there since PSP was added:

  https://lore.kernel.org/netdev/20261011192310.55-1-andrea.mayer@uniroma2.it/

> ---
>  net/ipv6/seg6_local.c | 15 ++++++++++++---
>  1 file changed, 12 insertions(+), 3 deletions(-)
>
> diff --git a/net/ipv6/seg6_local.c b/net/ipv6/seg6_local.c
> index 4fcfcd48cfae..521a9b0c0929 100644
> --- a/net/ipv6/seg6_local.c
> +++ b/net/ipv6/seg6_local.c
> @@ -121,7 +121,8 @@ struct bpf_lwt_prog {
>  
>  #define SEG6_LOCAL_END_FLV_SUPP_OPS	(SEG6_F_LOCAL_FLV_NEXT_CSID | \
>  					 SEG6_LOCAL_FLV8986_SUPP_OPS)
> -#define SEG6_LOCAL_END_X_FLV_SUPP_OPS	SEG6_F_LOCAL_FLV_NEXT_CSID
> +#define SEG6_LOCAL_END_X_FLV_SUPP_OPS	(SEG6_F_LOCAL_FLV_NEXT_CSID | \
> +					 SEG6_LOCAL_FLV8986_SUPP_OPS)
>  
>  struct seg6_flavors_info {
>  	/* Flavor operations */
> [snip]
> @@ -923,12 +924,20 @@ static int input_action_end_x(struct sk_buff *skb, struct seg6_local_lwt *slwt)
>  {
>  	const struct seg6_flavors_info *finfo = &slwt->flv_info;
>  	__u32 fops = finfo->flv_ops;
> +	int ret;
> +
> +	if (!fops)
> +		return input_action_end_x_core(skb, slwt);
>  
>  	/* check for the presence of NEXT-C-SID since it applies first */
>  	if (seg6_next_csid_enabled(fops))
>  		return end_x_next_csid_core(skb, slwt);

Here End.X could do what End does in the fix: call
seg6_use_next_csid() instead of seg6_next_csid_enabled(), so that a
packet with a zero Argument is processed as End.X with PSP.

Does it work for you to rebase this series on top of the End fix,
once it is merged, and make that change in this patch? Then End.X
handles the combination from the beginning.

The selftests of the two series conflict in srv6_end_flavors_test.sh,
and they set up the test environment differently. If you want a hand
with that part, I am glad to help.

Side note: I received only part of this series. Could you please also
Cc andrea@common-net.org, in this thread and on the next versions?

Ciao,
Andrea

  parent reply	other threads:[~2026-10-12  0:59 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-09  9:58 [PATCH net-next v2 0/5] seg6: add End.X PSP flavor support and selftests Hangbin Liu
2026-10-09  9:58 ` [PATCH net-next v2 1/5] seg6: split final End process out of flavor processing Hangbin Liu
2026-10-09  9:58 ` [PATCH net-next v2 2/5] seg6: add RFC8986 flavor support for End.X Hangbin Liu
2026-10-10 10:21   ` netdev-bot+sashiko
2026-10-12  0:32     ` Hangbin Liu
2026-10-12  0:59   ` Andrea Mayer [this message]
2026-10-12  1:38     ` Hangbin Liu
2026-10-09  9:58 ` [PATCH net-next v2 3/5] selftests: seg6: move SRv6 End PSP setup into its own helper Hangbin Liu
2026-10-10 10:21   ` netdev-bot+sashiko
2026-10-12  0:33     ` Hangbin Liu
2026-10-09  9:58 ` [PATCH net-next v2 4/5] selftest: seg6: add explicit cleanup for SRv6 End PSP test Hangbin Liu
2026-10-09  9:58 ` [PATCH net-next v2 5/5] selftests: seg6: add End.X PSP selftest Hangbin Liu
2026-10-10 10:21   ` netdev-bot+sashiko
2026-10-12  0:47     ` Hangbin Liu

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=20261012025900.c2321bfa92c5863d21efdba3@uniroma2.it \
    --to=andrea.mayer@uniroma2.it \
    --cc=andrea@common-net.org \
    --cc=davem@davemloft.net \
    --cc=edumazet@kernel.org \
    --cc=hangbin.liu@linux.dev \
    --cc=horms@kernel.org \
    --cc=kuba@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=liuhangbin@kylinos.cn \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=shuah@kernel.org \
    --cc=stefano.salsano@uniroma2.it \
    /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