From: Xin Xie <xiexinet@gmail.com>
To: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Cc: netdev@vger.kernel.org, linux-kselftest@vger.kernel.org,
linux-kernel@vger.kernel.org, davem@davemloft.net,
edumazet@google.com, kuba@kernel.org, pabeni@redhat.com,
horms@kernel.org, andrew+netdev@lunn.ch, shuah@kernel.org,
kees@kernel.org, petr.wozniak@gmail.com, qingfang.deng@linux.dev,
fmaurer@redhat.com, luka.gejak@linux.dev,
xiaoliang.yang_1@nxp.com, skhawaja@google.com,
liuhangbin@gmail.com, stable@vger.kernel.org,
sdf.kernel@gmail.com
Subject: Re: [PATCH 3/4] net: hsr: unfold GSO super-packets at the forward entry
Date: Mon, 28 Sep 2026 11:42:01 +0200 [thread overview]
Message-ID: <52f4d7a6-6bbe-41fb-863c-5c71644e20d4@gmail.com> (raw)
In-Reply-To: <20260928063824.0E3LO1vu@linutronix.de>
> So veth. The test suite is using veth I don't remember that it was (is)
> a problem there. But then there is no TCP.
> Wouldn't it be also a problem if you attach veth interface to a bridge
> and that large TCP skb would have to leave the bridge via a physical
> port?
When a bridge forwards a GSO skb from veth to a physical port, the
outgoing TX path handles segmentation. validate_xmit_skb() checks
whether software segmentation is needed. The networking core performs
software segmentation as needed and can use hardware segmentation
offload when available for that skb.
The software HSR/PRP path needs to split the GSO skb earlier. Each
segment needs its own sequence number and HSR tag or PRP trailer.
We add these before calling dev_queue_xmit() on the lower device.
The normal TX segmentation code cannot create these per-frame
HSR/PRP fields for us.
TCP is the case I reproduced, but this is not limited to TCP. UDP
GSO skbs can also pass through veth without being segmented.
Passing normal PROFINET RT or GOOSE frames through veth does not
make them GSO skbs. Patch 3 skips segmentation for these frames.
They still follow the normal HSR/PRP forwarding path.
> This does not sound like it is limited to hsr. I think it deserves a
> helper similar to skb_linearize().
Patch 3 already uses the common __skb_gso_segment() helper, then
passes each segment through normal HSR/PRP forwarding. Do you mean
a new common wrapper around this helper?
--
Xin
next prev parent reply other threads:[~2026-09-28 9:42 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-09 12:14 [PATCH net v6 0/4] net: hsr: fix GRO/GSO super-packet handling Xin Xie
2026-08-09 12:14 ` [PATCH 1/4] net: hsr: fix packet drops caused by GRO superpackets Xin Xie
2026-08-14 1:21 ` Jakub Kicinski
2026-08-17 15:38 ` Xin Xie
2026-09-18 23:46 ` Xin Xie
2026-09-23 10:32 ` Sebastian Andrzej Siewior
2026-09-24 21:16 ` Xin Xie
2026-08-09 12:14 ` [PATCH 2/4] net: hsr: shrink seqnr_lock to sequence counter updates Xin Xie
2026-08-10 2:23 ` Hangbin Liu
2026-09-23 10:37 ` Sebastian Andrzej Siewior
2026-09-24 21:22 ` Xin Xie
2026-08-09 12:14 ` [PATCH 3/4] net: hsr: unfold GSO super-packets at the forward entry Xin Xie
2026-09-23 10:43 ` Sebastian Andrzej Siewior
2026-09-24 21:26 ` Xin Xie
2026-09-25 8:29 ` Sebastian Andrzej Siewior
2026-09-25 9:52 ` Xin Xie
2026-09-28 6:38 ` Sebastian Andrzej Siewior
2026-09-28 9:42 ` Xin Xie [this message]
2026-09-28 10:12 ` Sebastian Andrzej Siewior
2026-08-09 12:14 ` [PATCH 4/4] selftests: net: hsr: cover GSO super-packets on PRP slave ingress Xin Xie
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=52f4d7a6-6bbe-41fb-863c-5c71644e20d4@gmail.com \
--to=xiexinet@gmail.com \
--cc=andrew+netdev@lunn.ch \
--cc=bigeasy@linutronix.de \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=fmaurer@redhat.com \
--cc=horms@kernel.org \
--cc=kees@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=liuhangbin@gmail.com \
--cc=luka.gejak@linux.dev \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=petr.wozniak@gmail.com \
--cc=qingfang.deng@linux.dev \
--cc=sdf.kernel@gmail.com \
--cc=shuah@kernel.org \
--cc=skhawaja@google.com \
--cc=stable@vger.kernel.org \
--cc=xiaoliang.yang_1@nxp.com \
/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
all inboxes | Powered by JetHome®