From: Neil Turton Date: Wed, 13 Feb 2008 07:13:48 +0000 (-0800) Subject: [NET]: Improve cache line coherency of ingress qdisc X-Git-Tag: v2.6.25-rc2~2^2~10 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d5bd0146f0d61f7dc9904a7cc6d5cb9832034de4;p=linux-2.6 [NET]: Improve cache line coherency of ingress qdisc Move the ingress qdisc members of struct net_device from the transmit cache line to the receive cache line to avoid cache line ping-pong. These members are only used on the receive path. Signed-off-by: Neil Turton Signed-off-by: David S. Miller --- diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index 047d432bde..4ffa49dbb6 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h @@ -604,6 +604,10 @@ struct net_device unsigned char broadcast[MAX_ADDR_LEN]; /* hw bcast add */ + /* ingress path synchronizer */ + spinlock_t ingress_lock; + struct Qdisc *qdisc_ingress; + /* * Cache line mostly used on queue transmit path (qdisc) */ @@ -617,10 +621,6 @@ struct net_device /* Partially transmitted GSO packet. */ struct sk_buff *gso_skb; - /* ingress path synchronizer */ - spinlock_t ingress_lock; - struct Qdisc *qdisc_ingress; - /* * One part is mostly used on xmit path (device) */