summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorEric Dumazet <edumazet@google.com>2024-03-29 15:42:25 +0000
committerDavid S. Miller <davem@davemloft.net>2024-04-01 11:28:32 +0100
commitd3ae5f4632c107d3c2eeb97a60fecc6a6f9d6fbe (patch)
tree56a637e4861e796a3919c4f774c057ce3ab34534 /include
parentc62fdf5b11ef12b89ac2450c25c12bffc3d924c5 (diff)
downloadlinux-stable-d3ae5f4632c107d3c2eeb97a60fecc6a6f9d6fbe.tar.gz
linux-stable-d3ae5f4632c107d3c2eeb97a60fecc6a6f9d6fbe.tar.bz2
linux-stable-d3ae5f4632c107d3c2eeb97a60fecc6a6f9d6fbe.zip
net: rps: move received_rps field to a better location
Commit 14d898f3c1b3 ("dev: Move received_rps counter next to RPS members in softnet data") was unfortunate: received_rps is dirtied by a cpu and never read by other cpus in fast path. Its presence in the hot RPS cache line (shared by many cpus) is hurting RPS/RFS performance. Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r--include/linux/netdevice.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
index 2c11c295cf64..7d12b5a9380f 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
@@ -3204,6 +3204,7 @@ struct softnet_data {
struct softnet_data *rps_ipi_list;
#endif
+ unsigned int received_rps;
bool in_net_rx_action;
bool in_napi_threaded_poll;
@@ -3236,7 +3237,6 @@ struct softnet_data {
unsigned int cpu;
unsigned int input_queue_tail;
#endif
- unsigned int received_rps;
struct sk_buff_head input_pkt_queue;
struct napi_struct backlog;