All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ido Schimmel <idosch@nvidia.com>
To: Paolo Abeni <pabeni@redhat.com>
Cc: zhilin zou <zhilinz@nebusec.ai>, Jakub Kicinski <kuba@kernel.org>,
	netdev@vger.kernel.org, dsahern@kernel.org, davem@davemloft.net,
	edumazet@google.com, horms@kernel.org, tom@herbertland.com,
	vega@nebusec.ai
Subject: Re: [PATCH net 1/1] ip6_tunnel: use skb_cow_head() in ip6_tnl_xmit()
Date: Thu, 6 Aug 2026 21:19:18 +0300	[thread overview]
Message-ID: <20260806181918.GA2060872@shredder> (raw)
In-Reply-To: <ae905b11-1b13-4f3e-8705-8a8c2ea7f54b@redhat.com>

On Thu, Aug 06, 2026 at 06:28:00PM +0200, Paolo Abeni wrote:
> On 8/6/26 11:06 AM, zhilin zou wrote:
> > On Thu, Aug 6, 2026 at 4:52 PM Ido Schimmel <idosch@nvidia.com> wrote:
> >>
> >> On Wed, Aug 05, 2026 at 05:29:02PM -0700, Jakub Kicinski wrote:
> >>> On Wed, 5 Aug 2026 12:07:21 +0300 Ido Schimmel wrote:
> >>>> __gre6_xmit() and ip6erspan_tunnel_xmit() already call skb_cow_head()
> >>>> before calling ip6_tnl_xmit().
> >>>
> >>> Probably just me but can't they all be buggy?
> >>> PKTGEN likes to send shared skbs around in funny ways.
> >>> Can we get a good explanation in the commit msg or maybe let's
> >>> keep the check?
> >>
> >> ip6_tnl_xmit() is accessible via two Ethernet devices (pktgen doesn't
> >> support other types) and they both clear IFF_TX_SKB_SHARING, so if
> >> pktgen sends them shared skbs, I would say that it's a pktgen bug and
> >> not a reason to block this patch. Note that pktgen is not available to
> >> unprivileged users, so it's a less severe bug.
> >>
> >> The patch also makes ip6_tnl_xmit() consistent with its IPv4 counterpart
> >> (ip_tunnel_xmit()) which is already using skb_cow_head().
> >>
> >> Zhiling, please add a note in the commit message that ip6gretap and
> >> ip6erspan do not expect to be handed shared skbs given that they clear
> >> IFF_TX_SKB_SHARING.
> > 
> > Thanks, Ido. I'll add a note to the commit message explaining that
> > ip6gretap and ip6erspan clear IFF_TX_SKB_SHARING and therefore do not
> > expect shared skbs, and send a v2 with your Reviewed-by tag retained.
> 
> I'm not sure if it's too late, but since a v2 is required, I think it
> would be better to keep the skb_shared check: that will avoid a later
> patch for the pktgen/shared issue that inevitably will land, possibly
> via the security channel.

What do you mean by "keep the skb_shared check"? Return an error if the
skb is shared before calling skb_cow_head()? How would that avoid "a
later patch for the pktgen/shared issue" when other tunnels are already
calling skb_cow_head() without an skb_shared() check (they clear
IFF_TX_SKB_SHARING)?

Not saying that there isn't a possible problem with pktgen, but it
should be fixed there and not papered over in various drivers.

  reply	other threads:[~2026-08-06 18:19 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-08-03  5:34 [PATCH net 0/1] ip6_tunnel: use skb_cow_head() in ip6_tnl_xmit() Zhiling Zou
2026-08-03  5:34 ` [PATCH net 1/1] " Zhiling Zou
2026-08-05  9:07   ` Ido Schimmel
2026-08-06  0:29     ` Jakub Kicinski
2026-08-06  8:52       ` Ido Schimmel
2026-08-06  9:06         ` zhilin zou
2026-08-06 16:28           ` Paolo Abeni
2026-08-06 18:19             ` Ido Schimmel [this message]
2026-08-07  8:31               ` Paolo Abeni
2026-08-09  7:57                 ` Ido Schimmel

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=20260806181918.GA2060872@shredder \
    --to=idosch@nvidia.com \
    --cc=davem@davemloft.net \
    --cc=dsahern@kernel.org \
    --cc=edumazet@google.com \
    --cc=horms@kernel.org \
    --cc=kuba@kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=tom@herbertland.com \
    --cc=vega@nebusec.ai \
    --cc=zhilinz@nebusec.ai \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.