summaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/sfc/siena/rx_common.c
diff options
context:
space:
mode:
authorJakub Kicinski <kuba@kernel.org>2024-03-07 21:12:45 -0800
committerJakub Kicinski <kuba@kernel.org>2024-03-07 21:12:46 -0800
commite8bb2ccff7216d520a7bc33c22484dafebe8147e (patch)
tree29b291f5ccbeb9324f98f48e352a84d311314f69 /drivers/net/ethernet/sfc/siena/rx_common.c
parentd3423ed9b89d27d0fd8386dbb9bee89728c92b87 (diff)
parentce7f49ab741591d83e33e56948bac2f12de6e14e (diff)
downloadlinux-e8bb2ccff7216d520a7bc33c22484dafebe8147e.tar.gz
linux-e8bb2ccff7216d520a7bc33c22484dafebe8147e.tar.bz2
linux-e8bb2ccff7216d520a7bc33c22484dafebe8147e.zip
Merge branch 'net-group-together-hot-data'
Eric Dumazet says: ==================== net: group together hot data While our recent structure reorganizations were focused on increasing max throughput, there is still an area where improvements are much needed. In many cases, a cpu handles one packet at a time, instead of a nice batch. Hardware interrupt. -> Software interrupt. -> Network/Protocol stacks. If the cpu was idle or busy in other layers, it has to pull many cache lines. This series adds a new net_hotdata structure, where some critical (and read-mostly) data used in rx and tx path is packed in a small number of cache lines. Synthetic benchmarks will not see much difference, but latency of single packet should improve. net_hodata current size on 64bit is 416 bytes, but might grow in the future. Also move RPS definitions to a new include file. ==================== Link: https://lore.kernel.org/r/20240306160031.874438-1-edumazet@google.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'drivers/net/ethernet/sfc/siena/rx_common.c')
-rw-r--r--drivers/net/ethernet/sfc/siena/rx_common.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/ethernet/sfc/siena/rx_common.c b/drivers/net/ethernet/sfc/siena/rx_common.c
index 4579f43484c3..219fb358a646 100644
--- a/drivers/net/ethernet/sfc/siena/rx_common.c
+++ b/drivers/net/ethernet/sfc/siena/rx_common.c
@@ -11,6 +11,7 @@
#include "net_driver.h"
#include <linux/module.h>
#include <linux/iommu.h>
+#include <net/rps.h>
#include "efx.h"
#include "nic.h"
#include "rx_common.h"