1. 17 3月, 2010 2 次提交
  2. 16 3月, 2010 1 次提交
  3. 14 3月, 2010 1 次提交
  4. 08 3月, 2010 3 次提交
  5. 28 2月, 2010 4 次提交
    • H
      bridge: Add hash elasticity/max sysfs entries · b195167f
      Herbert Xu 提交于
      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: NHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      b195167f
    • H
      bridge: Add multicast_snooping sysfs toggle · 561f1103
      Herbert Xu 提交于
      This patch allows the user to disable IGMP snooping completely
      through a sysfs toggle.  It also allows the user to reenable
      snooping when it has been automatically disabled due to hash
      collisions.  If the collisions have not been resolved however
      the system will refuse to reenable snooping.
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      561f1103
    • H
      bridge: Add multicast_router sysfs entries · 0909e117
      Herbert Xu 提交于
      This patch allows the user to forcibly enable/disable ports as
      having multicast routers attached.  A port with a multicast router
      will receive all multicast traffic.
      
      The value 0 disables it completely.  The default is 1 which lets
      the system automatically detect the presence of routers (currently
      this is limited to picking up queries), and 2 means that the port
      will always receive all multicast traffic.
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      0909e117
    • H
      bridge: Add core IGMP snooping support · eb1d1641
      Herbert Xu 提交于
      This patch adds the core functionality of IGMP snooping support
      without actually hooking it up.  So this patch should be a no-op
      as far as the bridge's external behaviour is concerned.
      
      All the new code and data is controlled by the Kconfig option
      BRIDGE_IGMP_SNOOPING.  A run-time toggle is also available.
      
      The multicast switching is done using an hash table that is
      lockless on the read-side through RCU.  On the write-side the
      new multicast_lock is used for all operations.  The hash table
      supports dynamic growth/rehashing.
      
      The hash table will be rehashed if any chain length exceeds a
      preset limit.  If rehashing does not reduce the maximum chain
      length then snooping will be disabled.
      
      These features may be added in future (in no particular order):
      
      * IGMPv3 source support
      * Non-querier router detection
      * IPv6
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      eb1d1641