From dec71db4a5c142af9e623ca3df2292cd84c75482 Mon Sep 17 00:00:00 2001 From: Qingfang Deng Date: Mon, 25 May 2026 09:33:20 +0800 Subject: [PATCH] bcm53xx: enable GRO Historically, GRO on bcm53xx target is disabled because it increases forwarding overhead. As fraglist GRO is now used by default, this overhead is minimized. Signed-off-by: Qingfang Deng Link: https://github.com/openwrt/openwrt/pull/23463 Signed-off-by: Jonas Jelonek --- .../600-net-disable-GRO-by-default.patch | 36 ------------------- .../600-net-disable-GRO-by-default.patch | 36 ------------------- 2 files changed, 72 deletions(-) delete mode 100644 target/linux/bcm53xx/patches-6.12/600-net-disable-GRO-by-default.patch delete mode 100644 target/linux/bcm53xx/patches-6.18/600-net-disable-GRO-by-default.patch diff --git a/target/linux/bcm53xx/patches-6.12/600-net-disable-GRO-by-default.patch b/target/linux/bcm53xx/patches-6.12/600-net-disable-GRO-by-default.patch deleted file mode 100644 index 18c6b87fc98..00000000000 --- a/target/linux/bcm53xx/patches-6.12/600-net-disable-GRO-by-default.patch +++ /dev/null @@ -1,36 +0,0 @@ -From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= -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 ---- - 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 -@@ -235,10 +235,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 | NETIF_F_GRO_FRAGLIST) -+#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_UDP_FWD) -+#define NETIF_F_SOFT_FEATURES_OFF (NETIF_F_GRO_UDP_FWD | NETIF_F_GRO | NETIF_F_GRO_FRAGLIST) - - #define NETIF_F_VLAN_FEATURES (NETIF_F_HW_VLAN_CTAG_FILTER | \ - NETIF_F_HW_VLAN_CTAG_RX | \ diff --git a/target/linux/bcm53xx/patches-6.18/600-net-disable-GRO-by-default.patch b/target/linux/bcm53xx/patches-6.18/600-net-disable-GRO-by-default.patch deleted file mode 100644 index 9d686d39313..00000000000 --- a/target/linux/bcm53xx/patches-6.18/600-net-disable-GRO-by-default.patch +++ /dev/null @@ -1,36 +0,0 @@ -From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= -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 ---- - 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 -@@ -237,10 +237,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 | NETIF_F_GRO_FRAGLIST) -+#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_UDP_FWD) -+#define NETIF_F_SOFT_FEATURES_OFF (NETIF_F_GRO_UDP_FWD | NETIF_F_GRO | NETIF_F_GRO_FRAGLIST) - - #define NETIF_F_VLAN_FEATURES (NETIF_F_HW_VLAN_CTAG_FILTER | \ - NETIF_F_HW_VLAN_CTAG_RX | \