Skip to content

Commit

Permalink
net: bridge: mark hash_elasticity as obsolete
Browse files Browse the repository at this point in the history
Now that the bridge multicast uses the generic rhashtable interface we
can drop the hash_elasticity option as that is already done for us and
it's hardcoded to a maximum of RHT_ELASTICITY (16 currently). Add a
warning about the obsolete option when the hash_elasticity is set.

Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Nikolay Aleksandrov authored and David S. Miller committed Dec 6, 2018
1 parent 4329596 commit cf332bc
Show file tree
Hide file tree
Showing 4 changed files with 7 additions and 12 deletions.
1 change: 0 additions & 1 deletion net/bridge/br_multicast.c
Original file line number Diff line number Diff line change
Expand Up @@ -1741,7 +1741,6 @@ static void br_ip6_multicast_query_expired(struct timer_list *t)

void br_multicast_init(struct net_bridge *br)
{
br->hash_elasticity = 4;
br->hash_max = 512;

br->multicast_router = MDB_RTR_TYPE_TEMP_QUERY;
Expand Down
11 changes: 4 additions & 7 deletions net/bridge/br_netlink.c
Original file line number Diff line number Diff line change
Expand Up @@ -1189,11 +1189,9 @@ static int br_changelink(struct net_device *brdev, struct nlattr *tb[],
return err;
}

if (data[IFLA_BR_MCAST_HASH_ELASTICITY]) {
u32 val = nla_get_u32(data[IFLA_BR_MCAST_HASH_ELASTICITY]);

br->hash_elasticity = val;
}
if (data[IFLA_BR_MCAST_HASH_ELASTICITY])
br_warn(br, "the hash_elasticity option has been deprecated and is always %u\n",
RHT_ELASTICITY);

if (data[IFLA_BR_MCAST_HASH_MAX])
br->hash_max = nla_get_u32(data[IFLA_BR_MCAST_HASH_MAX]);
Expand Down Expand Up @@ -1452,8 +1450,7 @@ static int br_fill_info(struct sk_buff *skb, const struct net_device *brdev)
br_opt_get(br, BROPT_MULTICAST_QUERIER)) ||
nla_put_u8(skb, IFLA_BR_MCAST_STATS_ENABLED,
br_opt_get(br, BROPT_MULTICAST_STATS_ENABLED)) ||
nla_put_u32(skb, IFLA_BR_MCAST_HASH_ELASTICITY,
br->hash_elasticity) ||
nla_put_u32(skb, IFLA_BR_MCAST_HASH_ELASTICITY, RHT_ELASTICITY) ||
nla_put_u32(skb, IFLA_BR_MCAST_HASH_MAX, br->hash_max) ||
nla_put_u32(skb, IFLA_BR_MCAST_LAST_MEMBER_CNT,
br->multicast_last_member_count) ||
Expand Down
1 change: 0 additions & 1 deletion net/bridge/br_private.h
Original file line number Diff line number Diff line change
Expand Up @@ -372,7 +372,6 @@ struct net_bridge {

#ifdef CONFIG_BRIDGE_IGMP_SNOOPING

u32 hash_elasticity;
u32 hash_max;

u32 multicast_last_member_count;
Expand Down
6 changes: 3 additions & 3 deletions net/bridge/br_sysfs_br.c
Original file line number Diff line number Diff line change
Expand Up @@ -424,13 +424,13 @@ static DEVICE_ATTR_RW(multicast_querier);
static ssize_t hash_elasticity_show(struct device *d,
struct device_attribute *attr, char *buf)
{
struct net_bridge *br = to_bridge(d);
return sprintf(buf, "%u\n", br->hash_elasticity);
return sprintf(buf, "%u\n", RHT_ELASTICITY);
}

static int set_elasticity(struct net_bridge *br, unsigned long val)
{
br->hash_elasticity = val;
br_warn(br, "the hash_elasticity option has been deprecated and is always %u\n",
RHT_ELASTICITY);
return 0;
}

Expand Down

0 comments on commit cf332bc

Please sign in to comment.