Re: [PATCH 1/2] virtio_net: checksum offloading handling fix

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 18 Jun 2024 11:01:27 +0800, Jason Wang <jasowang@xxxxxxxxxx> wrote:
> On Mon, Jun 17, 2024 at 9:15 PM Heng Qi <hengqi@xxxxxxxxxxxxxxxxx> wrote:
> >
> > In virtio spec 0.95, VIRTIO_NET_F_GUEST_CSUM was designed to handle
> > partially checksummed packets, and the validation of fully checksummed
> > packets by the device is independent of VIRTIO_NET_F_GUEST_CSUM
> > negotiation. However, the specification erroneously stated:
> >
> >   "If VIRTIO_NET_F_GUEST_CSUM is not negotiated, the device MUST set flags
> >    to zero and SHOULD supply a fully checksummed packet to the driver."
> >
> > This statement is inaccurate because even without VIRTIO_NET_F_GUEST_CSUM
> > negotiation, the device can still set the VIRTIO_NET_HDR_F_DATA_VALID flag.
> > Essentially, the device can facilitate the validation of these packets'
> > checksums - a process known as RX checksum offloading - removing the need
> > for the driver to do so.
> >
> > This scenario is currently not implemented in the driver and requires
> > correction. The necessary specification correction[1] has been made and
> > approved in the virtio TC vote.
> > [1] https://lists.oasis-open.org/archives/virtio-comment/202401/msg00011.html
> >
> > Fixes: 4f49129be6fa ("virtio-net: Set RXCSUM feature if GUEST_CSUM is available")
> > Signed-off-by: Heng Qi <hengqi@xxxxxxxxxxxxxxxxx>
> > ---
> 
> Acked-by: Jason Wang <jasowang@xxxxxxxxxx>
> 
> (Should we manually do checksum if RXCUSM is disabled?)
> 

Currently we do not allow RXCUSM to be disabled.

Thanks.

> Thanks
> 





[Index of Archives]     [KVM Development]     [Libvirt Development]     [Libvirt Users]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux