Re: [PATCH v6 net-next 03/14] net: update commnets for SKB_GSO_TCP_ECN and SKB_GSO_TCP_ACCECN

Paolo Abeni
2025-11-18T12:02:29Z

Note: typo in the subj

On 11/14/25 8:13 AM, chia-yu.chang@nokia-bell-labs.com wrote:
> From: Chia-Yu Chang <chia-yu.chang@nokia-bell-labs.com>
>
> No functional changes.

Some real commit message is needed.

>
> Co-developed-by: Ilpo Järvinen <ij@kernel.org>
> Signed-off-by: Ilpo Järvinen <ij@kernel.org>
> Signed-off-by: Chia-Yu Chang <chia-yu.chang@nokia-bell-labs.com>
>
> ---
> 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