net: bridge: add bitfield for options and convert vlan opts
Bridge options have usually been added as separate fields all over the net_bridge struct taking up space and ending up in different cache lines. Let's move them to a single bitfield to save up space and speedup lookups. This patch adds a simple API for option modifying and retrieving using bitops and converts the first user of the API - the bridge vlan options (vlan_enabled and vlan_stats_enabled). Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com> Reviewed-by: Stephen Hemminger <stephen@networkplumber.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
1c1cb6d032
commit
ae75767ec2
@@ -1416,7 +1416,8 @@ static int br_fill_info(struct sk_buff *skb, const struct net_device *brdev)
|
||||
#ifdef CONFIG_BRIDGE_VLAN_FILTERING
|
||||
if (nla_put_be16(skb, IFLA_BR_VLAN_PROTOCOL, br->vlan_proto) ||
|
||||
nla_put_u16(skb, IFLA_BR_VLAN_DEFAULT_PVID, br->default_pvid) ||
|
||||
nla_put_u8(skb, IFLA_BR_VLAN_STATS_ENABLED, br->vlan_stats_enabled))
|
||||
nla_put_u8(skb, IFLA_BR_VLAN_STATS_ENABLED,
|
||||
br_opt_get(br, BROPT_VLAN_STATS_ENABLED)))
|
||||
return -EMSGSIZE;
|
||||
#endif
|
||||
#ifdef CONFIG_BRIDGE_IGMP_SNOOPING
|
||||
|
Reference in New Issue
Block a user