RE: [PATCH v10 1/2] virtio-net: Fix ECN feature descriptions

Parav Pandit <[email protected]>
Newsgroups dev.linux.lists.virtio-comment
Message-ID <CY8PR12MB71959308B23EFE2A920D8B20DCE4A@CY8PR12MB7195.namprd12.prod.outlook.com>

> From: Chia-Yu Chang (Nokia) <[email protected]>
> Sent: 01 October 2025 05:56 PM
> 
> > -----Original Message-----
> > From: Parav Pandit <[email protected]>
> > Sent: Wednesday, October 1, 2025 12:51 PM
> > To: Chia-Yu Chang (Nokia) <[email protected]>;
> > [email protected]; [email protected]; [email protected];
> > [email protected]; [email protected];
> [email protected];
> > [email protected]; [email protected]; [email protected]; Koen De
> > Schepper (Nokia) <[email protected]>;
> > [email protected]; [email protected];
> > [email protected]; [email protected]
> > Subject: RE: [PATCH v10 1/2] virtio-net: Fix ECN feature descriptions
> >
> >
> > CAUTION: This is an external email. Please be very careful when clicking links
> or opening attachments. See the URL nok.it/ext for additional information.
> >
> >
> >
> > > From: Chia-Yu Chang (Nokia) <[email protected]>
> > > Sent: 01 October 2025 01:04 PM
> > >
> > > > -----Original Message-----
> > > > From: Parav Pandit <[email protected]>
> > > > Sent: Wednesday, October 1, 2025 6:24 AM
> > > > To: Chia-Yu Chang (Nokia) <[email protected]>;
> > > > [email protected]; [email protected]; [email protected];
> > > > [email protected]; [email protected];
> > > [email protected];
> > > > [email protected]; [email protected]; [email protected]; Koen De
> > > > Schepper (Nokia) <[email protected]>;
> > > > [email protected]; [email protected];
> > > > [email protected]; [email protected]
> > > > Subject: RE: [PATCH v10 1/2] virtio-net: Fix ECN feature
> > > > descriptions
> > > >
> > > >
> > > > CAUTION: This is an external email. Please be very careful when
> > > > clicking
> > > links or opening attachments. See the URL nok.it/ext for additional
> > > information.
> > > >
> > > >
> > > >
> > > > > From: Chia-Yu Chang (Nokia) <[email protected]>
> > > > >
> > > > > > -----Original Message-----
> > > > > > From: Parav Pandit <[email protected]>
> > > > > > Sent: Tuesday, September 30, 2025 6:15 AM
> > > > > > To: Chia-Yu Chang (Nokia) <[email protected]>;
> > > > > > [email protected]; [email protected];
> > > > > > [email protected]; [email protected];
> [email protected];
> > > > > [email protected];
> > > > > > [email protected]; [email protected]; [email protected]; Koen
> > > > > > De Schepper (Nokia) <[email protected]>;
> > > > > > [email protected]; [email protected];
> > > > > > [email protected];
> > > > > > [email protected]
> > > > > > Subject: Re: [PATCH v10 1/2] virtio-net: Fix ECN feature
> > > > > > descriptions
> > > > > >
> > > > > >
> > > > > > CAUTION: This is an external email. Please be very careful
> > > > > > when clicking
> > > > > links or opening attachments. See the URL nok.it/ext for
> > > > > additional information.
> > > > > >
> > > > > >
> > > > > >
> > > > > > On 29-09-2025 11:14 pm, Chia-Yu Chang (Nokia) wrote:
> > > > > > >> -----Original Message-----
> > > > > > >> From: Parav Pandit <[email protected]>
> > > > > > >> Sent: Monday, September 29, 2025 9:48 AM
> > > > > > >> To: Chia-Yu Chang (Nokia)
> > > > > > >> <[email protected]>;
> > > > > > >> [email protected]; [email protected];
> > > > > > >> [email protected]; [email protected];
> > > > > > >> [email protected]; [email protected];
> > > > > > >> [email protected];
> > > [email protected];
> > > > > > >> [email protected]; Koen De Schepper (Nokia)
> > > > > > >> <[email protected]>;
> > > > > > >> [email protected]; [email protected];
> > > > > > >> [email protected];
> > > [email protected]
> > > > > > >> Subject: RE: [PATCH v10 1/2] virtio-net: Fix ECN feature
> > > > > > >> descriptions
> > > > > > >>
> > > > > > >>
> > > > > > >> CAUTION: This is an external email. Please be very careful
> > > > > > >> when clicking
> > > > > links or opening attachments. See the URL nok.it/ext for
> > > > > additional information.
> > > > > > >>
> > > > > > >>
> > > > > > >>
> [...]
> > Virtio spec requirements are clearly written.
> > So just by referring to RFC 3168 is as blurry as today in context of GSO.
> >
> > At best possibly it can be written as "device SHOULD do ECN and CWR in first
> pkt.. and subsequent packets SHOULD have cleared".
> >
> > If that is not aligning, than better to not make it more blurry.
> > ACCECN feature bit can be more crisply defined in that case.
> 
> OK, then could you let us know if we make below changes in the next version,
> are they clear enough for virtio spec?
> 
> 
> 1. VIRTIO_NET_F_GUEST_ECN (9): Driver can receive TSO with the CWR flag
> set. This CWR flag is only applied to the first packet, and the CWR flag of
> subsequent packets should be cleared.
> 
> 2. VIRTIO_NET_F_HOST_ECN (13): Device can receive TSO with the CWR flag
> set. This CWR flag is only applied to the first packet, and the CWR flag of
> subsequent packets should be cleared.
> 
> 3. If the driver negotiated the VIRTIO_NET_F_HOST_ECN feature, the
> VIRTIO_NET_HDR_GSO_ECN bit in gso_type indicates that the CWR flag of the
> TCP packet applied only to the first packet and is cleared in subsequent
> packets.
> 
> 4. The driver SHOULD NOT send to the device TCP packets requiring
> segmentation offload with the CWR flag set ONLY for to the first packet and
> cleared in subsequent packets, unless the VIRTIO_NET_F_HOST_ECN feature is
> negotiated, in which case the driver MUST set the VIRTIO_NET_HDR_GSO_ECN
> bit in gso_type.
> 
> 5. The device SHOULD NOT send to the driver TCP packets requiring
> segmentation offload with the CWR flag set ONLY for to the first packet and
> cleared in subsequent packets, unless the VIRTIO_NET_F_GUEST_ECN feature
> is negotiated, in which case the driver MUST set the
> VIRTIO_NET_HDR_GSO_ECN bit in gso_type.
> 

Also, while it is good to document existing behaviour of the spec, devices and drivers,
I believe that ACCECN need not have to wait for the documentation of existing GSO_ECN.

However, I am bit puzzled with the Linux kernel commit [1] of yours that hints that ACCECN may not need any special handling.

You described,

    If NIC is completely unaware of RFC3168 ECN (doesn't support
    NETIF_F_TSO_ECN) or its TSO engine can be set to not touch CWR flag
    despite supporting also NETIF_F_TSO_ECN, TSO could be safely used
    with AccECN on such NIC. This should be evaluated per NIC basis
    (not done in this patch series for any NICs).

Based on above commit log, can we say that when existing GSO_ECN is not negotiated, ACCECN can work as_is without the patch_2?

[1] commit 023af5a72ab16 ("gso: AccECN support")
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.