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

orang tua
1c1cb6d032
melakukan
ae75767ec2
@@ -743,7 +743,7 @@ static ssize_t vlan_filtering_show(struct device *d,
|
||||
char *buf)
|
||||
{
|
||||
struct net_bridge *br = to_bridge(d);
|
||||
return sprintf(buf, "%d\n", br->vlan_enabled);
|
||||
return sprintf(buf, "%d\n", br_opt_get(br, BROPT_VLAN_ENABLED));
|
||||
}
|
||||
|
||||
static ssize_t vlan_filtering_store(struct device *d,
|
||||
@@ -791,7 +791,7 @@ static ssize_t vlan_stats_enabled_show(struct device *d,
|
||||
char *buf)
|
||||
{
|
||||
struct net_bridge *br = to_bridge(d);
|
||||
return sprintf(buf, "%u\n", br->vlan_stats_enabled);
|
||||
return sprintf(buf, "%u\n", br_opt_get(br, BROPT_VLAN_STATS_ENABLED));
|
||||
}
|
||||
|
||||
static ssize_t vlan_stats_enabled_store(struct device *d,
|
||||
|
Reference in New Issue
Block a user