aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Dumazet <edumazet@google.com>2017-04-25 11:36:52 -0700
committerDavid S. Miller <davem@davemloft.net>2017-04-25 16:25:36 -0400
commit7acedaf5c4355f812cfef883ac28bf15f7d9205e (patch)
tree9d6443e8561ed7c8ed1021a741752c179077e5f1
parentdrivers: net: xgene-v2: Fix error return code in xge_mdio_config() (diff)
downloadlinux-dev-7acedaf5c4355f812cfef883ac28bf15f7d9205e.tar.xz
linux-dev-7acedaf5c4355f812cfef883ac28bf15f7d9205e.zip
net: move xdp_prog field in RX cache lines
(struct net_device, xdp_prog) field should be moved in RX cache lines, reducing latencies when a single packet is received on idle host, since netif_elide_gro() needs it. Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-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 46d220c2bf92..8c5c8cdc7b97 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
@@ -1790,6 +1790,7 @@ struct net_device {
unsigned int real_num_rx_queues;
#endif
+ struct bpf_prog __rcu *xdp_prog;
unsigned long gro_flush_timeout;
rx_handler_func_t __rcu *rx_handler;
void __rcu *rx_handler_data;
@@ -1905,7 +1906,6 @@ struct net_device {
struct lock_class_key *qdisc_tx_busylock;
struct lock_class_key *qdisc_running_key;
bool proto_down;
- struct bpf_prog __rcu *xdp_prog;
};
#define to_net_dev(d) container_of(d, struct net_device, dev)