diff mbox series

[net-next] net: align pcpu_sw_netstats and pcpu_lstats structs

Message ID 20181116152424.222826-1-edumazet@google.com
State Accepted, archived
Delegated to: David Miller
Headers show
Series [net-next] net: align pcpu_sw_netstats and pcpu_lstats structs | expand

Commit Message

Eric Dumazet Nov. 16, 2018, 3:24 p.m. UTC
Do not risk spanning these small structures on two cache lines,
it is absolutely not worth it.

For 32bit arches, the hint might not be enough, but we do not
really care anymore.

Signed-off-by: Eric Dumazet <edumazet@google.com>
---
 include/linux/netdevice.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

David Miller Nov. 18, 2018, 5:37 a.m. UTC | #1
From: Eric Dumazet <edumazet@google.com>
Date: Fri, 16 Nov 2018 07:24:24 -0800

> Do not risk spanning these small structures on two cache lines,
> it is absolutely not worth it.
> 
> For 32bit arches, the hint might not be enough, but we do not
> really care anymore.
> 
> Signed-off-by: Eric Dumazet <edumazet@google.com>

Applied.
diff mbox series

Patch

diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
index 917ae7b6263e4686ac7af4d16445f4e996001ea6..086e64d885971ff04f186d488975b3305a0fbb1d 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
@@ -2389,13 +2389,13 @@  struct pcpu_sw_netstats {
 	u64     tx_packets;
 	u64     tx_bytes;
 	struct u64_stats_sync   syncp;
-};
+} __aligned(4 * sizeof(u64));
 
 struct pcpu_lstats {
 	u64 packets;
 	u64 bytes;
 	struct u64_stats_sync syncp;
-};
+} __aligned(2 * sizeof(u64));
 
 #define __netdev_alloc_pcpu_stats(type, gfp)				\
 ({									\