diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2010-02-27 20:41:51 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-02-28 09:49:46 +0100 |
commit | b195167fcf089dbdc650bb874084555035f07f98 (patch) | |
tree | 9b0c491bd1e6e13472d074986869a9aafcb3ae3f /net/bridge/br_private.h | |
parent | bridge: Add multicast_snooping sysfs toggle (diff) | |
download | linux-b195167fcf089dbdc650bb874084555035f07f98.tar.xz linux-b195167fcf089dbdc650bb874084555035f07f98.zip |
bridge: Add hash elasticity/max sysfs entries
This patch allows the user to control the hash elasticity/max
parameters. The elasticity setting does not take effect until
the next new multicast group is added. At which point it is
checked and if after rehashing it still can't be satisfied then
snooping will be disabled.
The max setting on the other hand takes effect immediately. It
must be a power of two and cannot be set to a value less than the
current number of multicast group entries. This is the only way
to shrink the multicast hash.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/bridge/br_private.h')
-rw-r--r-- | net/bridge/br_private.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/bridge/br_private.h b/net/bridge/br_private.h index bf162fa6b23b..9191198c4f1b 100644 --- a/net/bridge/br_private.h +++ b/net/bridge/br_private.h @@ -301,6 +301,7 @@ extern int br_multicast_set_router(struct net_bridge *br, unsigned long val); extern int br_multicast_set_port_router(struct net_bridge_port *p, unsigned long val); extern int br_multicast_toggle(struct net_bridge *br, unsigned long val); +extern int br_multicast_set_hash_max(struct net_bridge *br, unsigned long val); #else static inline int br_multicast_rcv(struct net_bridge *br, struct net_bridge_port *port, |