]> git.ipfire.org Git - thirdparty/openwrt.git/commit
airoha: Improve LRO performances 23530/head
authorLorenzo Bianconi <lorenzo@kernel.org>
Mon, 25 May 2026 12:17:39 +0000 (14:17 +0200)
committerChristian Marangi <ansuelsmth@gmail.com>
Wed, 27 May 2026 07:17:12 +0000 (09:17 +0200)
commitd22ceb8d24e87b1bd729fd75f91e5b8fccfc8bbc
treeaaf0fd8fc72fbc3ff069e225e43eb9bd48c30bb7
parent88300c83f34ae1517e8b6dd248fecd60a6fdc904
airoha: Improve LRO performances

Add hardware TCP Large Receive Offload (LRO) support to the airoha_eth
driver, leveraging the EN7581/AN7583 SoC's 8 dedicated LRO hardware queues
mapped to RX queues 24–31. LRO hw offloading does not support
Scatter-Gather (SG) so it is required to increase the page_pool allocation
order to 2 for RX queues 24–31 (LRO queues).

Performance comparison between GRO and hw LRO has been carried out using
a 10Gbps NIC:

GRO: ~2.7 Gbps
LRO: ~8.1 Gbps

Tested-by: Madhur Agrawal <madhur.agrawal@airoha.com>
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://github.com/openwrt/openwrt/pull/23530
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
15 files changed:
target/linux/airoha/patches-6.12/916-net-airoha-Implement-LRO-TCP-support.patch
target/linux/airoha/patches-6.12/920-01-net-airoha-Introduce-airoha_gdm_dev-struct.patch
target/linux/airoha/patches-6.12/920-02-net-airoha-Move-airoha_qdma-pointer-in-airoha_gdm_de.patch
target/linux/airoha/patches-6.12/920-03-net-airoha-Rely-on-airoha_gdm_dev-pointer-in-airoha_.patch
target/linux/airoha/patches-6.12/920-04-net-airoha-Move-qos_sq_bmap-in-airoha_gdm_dev-struct.patch
target/linux/airoha/patches-6.12/920-05-net-airoha-Move-cpu-fwd-_tx_packets-in-airoha_gdm_de.patch
target/linux/airoha/patches-6.12/920-06-net-airoha-Support-multiple-net_devices-for-a-single.patch
target/linux/airoha/patches-6.12/920-07-net-airoha-Do-not-stop-GDM-port-if-it-is-shared.patch
target/linux/airoha/patches-6.12/920-08-net-airoha-Introduce-WAN-device-flag.patch
target/linux/airoha/patches-6.12/920-09-net-airoha-Support-multiple-LAN-WAN-interfaces-for-h.patch
target/linux/airoha/patches-6.12/920-10-net-airoha-Rename-airoha_set_gdm2_loopback-in-airoha.patch
target/linux/airoha/patches-6.12/920-12-net-airoha-Add-ethtool-priv_flags-callbacks.patch
target/linux/airoha/patches-6.12/920-13-net-airoha-Rework-MTU-configuration.patch
target/linux/airoha/patches-6.12/920-14-net-airoha-Better-handle-MIB-for-GDM-with-multiple-p.patch
target/linux/airoha/patches-6.12/920-15-net-airoha-fix-wrong-airoha_get_fe_port.patch