Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d5bd0146 authored by Neil Turton's avatar Neil Turton Committed by David S. Miller
Browse files

[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: default avatarNeil Turton <nturton@solarflare.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent d8b2a4d2
Loading
Loading
Loading
Loading
+4 −4
Original line number Original line Diff line number Diff line
@@ -604,6 +604,10 @@ struct net_device


	unsigned char		broadcast[MAX_ADDR_LEN];	/* hw bcast add	*/
	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)
 * Cache line mostly used on queue transmit path (qdisc)
 */
 */
@@ -617,10 +621,6 @@ struct net_device
	/* Partially transmitted GSO packet. */
	/* Partially transmitted GSO packet. */
	struct sk_buff		*gso_skb;
	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)
 * One part is mostly used on xmit path (device)
 */
 */