diff options
author | Jason Wang <[email protected]> | 2021-08-17 16:06:59 +0800 |
---|---|---|
committer | David S. Miller <[email protected]> | 2021-08-17 10:45:09 +0100 |
commit | dbcf24d153884439dad30484a0e3f02350692e4c (patch) | |
tree | ac8d5338247dc70bf745d6eaada4fab3de0c2f6b /scripts/bpf_doc.py | |
parent | 09e856d54bda5f288ef8437a90ab2b9b3eab83d1 (diff) |
virtio-net: use NETIF_F_GRO_HW instead of NETIF_F_LRO
Commit a02e8964eaf92 ("virtio-net: ethtool configurable LRO")
maps LRO to virtio guest offloading features and allows the
administrator to enable and disable those features via ethtool.
This leads to several issues:
- For a device that doesn't support control guest offloads, the "LRO"
can't be disabled triggering WARN in dev_disable_lro() when turning
off LRO or when enabling forwarding bridging etc.
- For a device that supports control guest offloads, the guest
offloads are disabled in cases of bridging, forwarding etc slowing
down the traffic.
Fix this by using NETIF_F_GRO_HW instead. Though the spec does not
guarantee packets to be re-segmented as the original ones,
we can add that to the spec, possibly with a flag for devices to
differentiate between GRO and LRO.
Further, we never advertised LRO historically before a02e8964eaf92
("virtio-net: ethtool configurable LRO") and so bridged/forwarded
configs effectively always relied on virtio receive offloads behaving
like GRO - thus even if this breaks any configs it is at least not
a regression.
Fixes: a02e8964eaf92 ("virtio-net: ethtool configurable LRO")
Acked-by: Michael S. Tsirkin <[email protected]>
Reported-by: Ivan <[email protected]>
Tested-by: Ivan <[email protected]>
Signed-off-by: Jason Wang <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Diffstat (limited to 'scripts/bpf_doc.py')
0 files changed, 0 insertions, 0 deletions