]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
6.6-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 10 Mar 2025 15:21:22 +0000 (16:21 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 10 Mar 2025 15:21:22 +0000 (16:21 +0100)
added patches:
net-cadence-macb-enable-software-irq-coalescing-by-default.patch

queue-6.6/net-cadence-macb-enable-software-irq-coalescing-by-default.patch [new file with mode: 0644]
queue-6.6/series

diff --git a/queue-6.6/net-cadence-macb-enable-software-irq-coalescing-by-default.patch b/queue-6.6/net-cadence-macb-enable-software-irq-coalescing-by-default.patch
new file mode 100644 (file)
index 0000000..637c454
--- /dev/null
@@ -0,0 +1,38 @@
+From d57f7b45945ac0517ff8ea50655f00db6e8d637c Mon Sep 17 00:00:00 2001
+From: Sean Anderson <sean.anderson@linux.dev>
+Date: Tue, 3 Sep 2024 14:49:12 -0400
+Subject: net: cadence: macb: Enable software IRQ coalescing by default
+
+From: Sean Anderson <sean.anderson@linux.dev>
+
+commit d57f7b45945ac0517ff8ea50655f00db6e8d637c upstream.
+
+This NIC doesn't have hardware IRQ coalescing. Under high load,
+interrupts can adversely affect performance. To mitigate this, enable
+software IRQ coalescing by default. On my system this increases receive
+throughput with iperf3 from 853 MBit/sec to 934 MBit/s, decreases
+interrupts from 69489/sec to 2016/sec, and decreases CPU utilization
+from 27% (4x Cortex-A53) to 14%. Latency is not affected (as far as I
+can tell).
+
+Signed-off-by: Sean Anderson <sean.anderson@linux.dev>
+Reviewed-by: Simon Horman <horms@kernel.org>
+Link: https://patch.msgid.link/20240903184912.4151926-1-sean.anderson@linux.dev
+Signed-off-by: Jakub Kicinski <kuba@kernel.org>
+Cc: Daniel J Blueman <daniel@quora.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/net/ethernet/cadence/macb_main.c |    2 ++
+ 1 file changed, 2 insertions(+)
+
+--- a/drivers/net/ethernet/cadence/macb_main.c
++++ b/drivers/net/ethernet/cadence/macb_main.c
+@@ -4154,6 +4154,8 @@ static int macb_init(struct platform_dev
+               dev->ethtool_ops = &macb_ethtool_ops;
+       }
++      netdev_sw_irq_coalesce_default_on(dev);
++
+       dev->priv_flags |= IFF_LIVE_ADDR_CHANGE;
+       /* Set features */
index 96ed86197ffa4ab91a53b73ee142d81144514895..64d7abde5fd6a0c2d8b6272e7c043f915f2ae352 100644 (file)
@@ -131,3 +131,4 @@ kbuild-hdrcheck-fix-cross-build-with-clang.patch
 alsa-hda-realtek-fix-incorrect-is_reachable-usage.patch
 riscv-fix-enabling-cbo.zero-when-running-in-m-mode.patch
 riscv-save-restore-envcfg-csr-during-cpu-suspend.patch
+net-cadence-macb-enable-software-irq-coalescing-by-default.patch