]> git.proxmox.com Git - mirror_ubuntu-disco-kernel.git/commitdiff
net: align pcpu_sw_netstats and pcpu_lstats structs
authorEric Dumazet <edumazet@google.com>
Fri, 16 Nov 2018 15:24:24 +0000 (07:24 -0800)
committerDavid S. Miller <davem@davemloft.net>
Sun, 18 Nov 2018 05:37:13 +0000 (21:37 -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>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/netdevice.h

index 917ae7b6263e4686ac7af4d16445f4e996001ea6..086e64d885971ff04f186d488975b3305a0fbb1d 100644 (file)
@@ -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)                           \
 ({                                                                     \