From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nikolay Aleksandrov Subject: [PATCH net-next v2 9/9] net: bridge: pack net_bridge better Date: Wed, 26 Sep 2018 17:01:07 +0300 Message-ID: <20180926140107.10218-10-nikolay@cumulusnetworks.com> References: <20180926140107.10218-1-nikolay@cumulusnetworks.com> Cc: roopa@cumulusnetworks.com, davem@davemloft.net, stephen@networkplumber.org, bridge@lists.linux-foundation.org, idosch@idosch.org, Nikolay Aleksandrov To: netdev@vger.kernel.org Return-path: Received: from mail-wm1-f68.google.com ([209.85.128.68]:39945 "EHLO mail-wm1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727484AbeIZUOi (ORCPT ); Wed, 26 Sep 2018 16:14:38 -0400 Received: by mail-wm1-f68.google.com with SMTP id o2-v6so2463145wmh.5 for ; Wed, 26 Sep 2018 07:01:31 -0700 (PDT) In-Reply-To: <20180926140107.10218-1-nikolay@cumulusnetworks.com> Sender: netdev-owner@vger.kernel.org List-ID: Further reduce the size of net_bridge with 8 bytes and reduce the number of holes in it: Before: holes: 5, sum holes: 15 After: holes: 3, sum holes: 7 Signed-off-by: Nikolay Aleksandrov --- v2: Remove the comment about offload_fwd_mark in net_bridge and leave it, the change will be for net_bridge_port instead. Thanks to Ido for spotting it. net/bridge/br_private.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/bridge/br_private.h b/net/bridge/br_private.h index 92d08f8c7dd4..57229b9d800f 100644 --- a/net/bridge/br_private.h +++ b/net/bridge/br_private.h @@ -349,7 +349,6 @@ struct net_bridge { /* STP */ bridge_id designated_root; bridge_id bridge_id; - u32 root_path_cost; unsigned char topology_change; unsigned char topology_change_detected; u16 root_port; @@ -361,6 +360,7 @@ struct net_bridge { unsigned long bridge_hello_time; unsigned long bridge_forward_delay; unsigned long bridge_ageing_time; + u32 root_path_cost; u8 group_addr[ETH_ALEN]; @@ -383,6 +383,7 @@ struct net_bridge { #if IS_ENABLED(CONFIG_IPV6) u8 multicast_mld_version; #endif + spinlock_t multicast_lock; unsigned long multicast_last_member_interval; unsigned long multicast_membership_interval; unsigned long multicast_querier_interval; @@ -390,7 +391,6 @@ struct net_bridge { unsigned long multicast_query_response_interval; unsigned long multicast_startup_query_interval; - spinlock_t multicast_lock; struct net_bridge_mdb_htable __rcu *mdb; struct hlist_head router_list; -- 2.11.0