From: Eric Dumazet <eduma...@google.com>

ip6_dst_ops have cache line alignement.

Moving it at beginning of netns_ipv6
removes a 48 byte hole, and shrinks netns_ipv6
from 12 to 11 cache lines.

Signed-off-by: Eric Dumazet <eduma...@google.com>
---
 include/net/netns/ipv6.h | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/include/net/netns/ipv6.h b/include/net/netns/ipv6.h
index 
84f4a8bec397dc5a15d84fae118cda33d87671bb..808f0f79ea9c9b9094dc94b71e295e26a9202ad1
 100644
--- a/include/net/netns/ipv6.h
+++ b/include/net/netns/ipv6.h
@@ -55,6 +55,9 @@ struct netns_sysctl_ipv6 {
 };
 
 struct netns_ipv6 {
+       /* Keep ip6_dst_ops at the beginning of netns_sysctl_ipv6 */
+       struct dst_ops          ip6_dst_ops;
+
        struct netns_sysctl_ipv6 sysctl;
        struct ipv6_devconf     *devconf_all;
        struct ipv6_devconf     *devconf_dflt;
@@ -76,7 +79,6 @@ struct netns_ipv6 {
        struct hlist_head       *fib_table_hash;
        struct fib6_table       *fib6_main_tbl;
        struct list_head        fib6_walkers;
-       struct dst_ops          ip6_dst_ops;
        rwlock_t                fib6_walker_lock;
        spinlock_t              fib6_gc_lock;
        unsigned int             ip6_rt_gc_expire;
-- 
2.31.0.291.g576ba9dcdaf-goog

Reply via email to