Enable LRO by default when available on vtnet interfaces
The prior change to not enable LRO by default has confused several people. The configurations where LRO is problematic is not the typical use case for VirtIO, and due to other issues, this often requires checksum offloading to be disabled anyways. PR: 185864 MFC after: 2 weeks
This commit is contained in:
parent
2c59cd89c8
commit
9a4dabdc5a
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=274325
@ -967,9 +967,14 @@ vtnet_setup_interface(struct vtnet_softc *sc)
|
||||
ifp->if_capabilities |= IFCAP_VLAN_HWTSO;
|
||||
}
|
||||
|
||||
if (virtio_with_feature(dev, VIRTIO_NET_F_GUEST_CSUM))
|
||||
if (virtio_with_feature(dev, VIRTIO_NET_F_GUEST_CSUM)) {
|
||||
ifp->if_capabilities |= IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6;
|
||||
|
||||
if (virtio_with_feature(dev, VIRTIO_NET_F_GUEST_TSO4) ||
|
||||
virtio_with_feature(dev, VIRTIO_NET_F_GUEST_TSO6))
|
||||
ifp->if_capabilities |= IFCAP_LRO;
|
||||
}
|
||||
|
||||
if (ifp->if_capabilities & IFCAP_HWCSUM) {
|
||||
/*
|
||||
* VirtIO does not support VLAN tagging, but we can fake
|
||||
@ -987,12 +992,6 @@ vtnet_setup_interface(struct vtnet_softc *sc)
|
||||
* Capabilities after here are not enabled by default.
|
||||
*/
|
||||
|
||||
if (ifp->if_capabilities & IFCAP_RXCSUM) {
|
||||
if (virtio_with_feature(dev, VIRTIO_NET_F_GUEST_TSO4) ||
|
||||
virtio_with_feature(dev, VIRTIO_NET_F_GUEST_TSO6))
|
||||
ifp->if_capabilities |= IFCAP_LRO;
|
||||
}
|
||||
|
||||
if (sc->vtnet_flags & VTNET_FLAG_VLAN_FILTER) {
|
||||
ifp->if_capabilities |= IFCAP_VLAN_HWFILTER;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user