|
@@ -0,0 +1,36 @@
|
|
|
+From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <[email protected]>
|
|
|
+Date: Mon, 20 Jun 2022 10:01:18 +0200
|
|
|
+Subject: [PATCH] net: disable GRO by default
|
|
|
+MIME-Version: 1.0
|
|
|
+Content-Type: text/plain; charset=UTF-8
|
|
|
+Content-Transfer-Encoding: 8bit
|
|
|
+
|
|
|
+In many cases GRO improves network performance however it comes at a
|
|
|
+cost of chacksums calculations. In case of slow CPU and missing hardware
|
|
|
+csum calculation support GRO can actually decrease network speed.
|
|
|
+
|
|
|
+On BCM4708 *disabling* GRO results in following NAT masquarade speed
|
|
|
+changes:
|
|
|
+1. 364 Mb/s → 396 Mb/s (packet steering disabled)
|
|
|
+2. 341 Mb/s → 566 Mb/s (packet steering enabled)
|
|
|
+
|
|
|
+Signed-off-by: Rafał Miłecki <[email protected]>
|
|
|
+---
|
|
|
+ include/linux/netdev_features.h | 4 ++--
|
|
|
+ 1 file changed, 2 insertions(+), 2 deletions(-)
|
|
|
+
|
|
|
+--- a/include/linux/netdev_features.h
|
|
|
++++ b/include/linux/netdev_features.h
|
|
|
+@@ -242,10 +242,10 @@ static inline int find_next_netdev_featu
|
|
|
+ #define NETIF_F_UPPER_DISABLES NETIF_F_LRO
|
|
|
+
|
|
|
+ /* changeable features with no special hardware requirements */
|
|
|
+-#define NETIF_F_SOFT_FEATURES (NETIF_F_GSO | NETIF_F_GRO)
|
|
|
++#define NETIF_F_SOFT_FEATURES (NETIF_F_GSO)
|
|
|
+
|
|
|
+ /* Changeable features with no special hardware requirements that defaults to off. */
|
|
|
+-#define NETIF_F_SOFT_FEATURES_OFF (NETIF_F_GRO_FRAGLIST | NETIF_F_GRO_UDP_FWD)
|
|
|
++#define NETIF_F_SOFT_FEATURES_OFF (NETIF_F_GRO_FRAGLIST | NETIF_F_GRO_UDP_FWD | NETIF_F_GRO)
|
|
|
+
|
|
|
+ #define NETIF_F_VLAN_FEATURES (NETIF_F_HW_VLAN_CTAG_FILTER | \
|
|
|
+ NETIF_F_HW_VLAN_CTAG_RX | \
|