Re: [PATCH v6 net-next 03/14] net: update commnets for SKB_GSO_TCP_ECN and SKB_GSO_TCP_ACCECN
From: Paolo Abeni <pabeni@redhat.com>
Date: 2025-11-18 12:02:27
Also in:
bpf, linux-doc, linux-kselftest
Note: typo in the subj On 11/14/25 8:13 AM, chia-yu.chang@nokia-bell-labs.com wrote:
From: Chia-Yu Chang <redacted> No functional changes.
Some real commit message is needed.
quoted hunk ↗ jump to hunk
Co-developed-by: Ilpo Järvinen <ij@kernel.org> Signed-off-by: Ilpo Järvinen <ij@kernel.org> Signed-off-by: Chia-Yu Chang <redacted> --- v6: - Update comments. --- include/linux/skbuff.h | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-)diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h index ff90281ddf90..e09455cee8e3 100644 --- a/include/linux/skbuff.h +++ b/include/linux/skbuff.h@@ -671,7 +671,13 @@ enum { /* This indicates the skb is from an untrusted source. */ SKB_GSO_DODGY = 1 << 1, - /* This indicates the tcp segment has CWR set. */ + /* For Tx, this indicates the first TCP segment has CWR set, and any + * subsequent segment in the same skb has CWR cleared. This is not + * used on Rx except for virtio_net. However, because the connection + * to which the segment belongs is not tracked to use RFC3168 or + * Accurate ECN, and using RFC3168 ECN offload may corrupt AccECN + * signal of AccECN segments. Therefore, this cannot be used on Rx.
Stating both that is used by virtio_net and can not be used in the RX path is a bit confusing. Random Contributor may be tempted from removing ECN support from virtio_net Please state explicitly: - why it makes sense to use this in virtio_net - this must not be used in the RX path _outside_ the virtio net driver something alike: /* For Tx, this indicates the first TCP segment has CWR set, and any * subsequent segment in the same skb has CWR cleared. However, because * the connection to which the segment belongs is not tracked to use * RFC3168 or Accurate ECN, and using RFC3168 ECN offload may corrupt * AccECN signal of AccECN segments. Therefore, this cannot be used on * Rx outside the virtio_net driver. Such exception exist due to * <reason> */ /P