1. 14 12月, 2009 1 次提交
  2. 04 12月, 2009 2 次提交
  3. 02 12月, 2009 1 次提交
  4. 18 11月, 2009 1 次提交
  5. 16 11月, 2009 1 次提交
    • J
      bonding: fix 802.3ad standards compliance error · 2d6682db
      Jay Vosburgh 提交于
      The language of 802.3ad 43.4.9 requires the "recordPDU" function
      to, in part, compare the Partner parameter values in a received LACPDU
      to the stored Actor values.  If those match, then the Partner's
      synchronization state is set to true.
      
      	The current 802.3ad implementation is performing these steps out
      of order; first, the synchronization check is done, then the paramters are
      checked to see if they match (the synch check being done against a match
      check of a prior LACPDU).  This causes delays in establishing aggregators
      in some circumstances.
      
      	This patch modifies the 802.3ad code to call __choose_matched,
      the function that does the "match" comparisions, as the first step of
      __record_pdu, instead of immediately afterwards.  This new behavior is
      in compliance with the language of the standard.
      
      	Some additional commentary relating to code vs. standard is also
      added.
      
      	Reported by Martin Patterson <martin@gear6.com> who also supplied
      the logic of the fix and verified the patch.
      Signed-off-by: NJay Vosburgh <fubar@us.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2d6682db
  6. 31 10月, 2009 6 次提交
  7. 29 10月, 2009 1 次提交
    • J
      bonding: fix a race condition in calls to slave MII ioctls · d9d52832
      Jiri Bohac 提交于
      In mii monitor mode, bond_check_dev_link() calls the the ioctl
      handler of slave devices. It stores the ndo_do_ioctl function
      pointer to a static (!) ioctl variable and later uses it to call the
      handler with the IOCTL macro.
      
      If another thread executes bond_check_dev_link() at the same time
      (even with a different bond, which none of the locks prevent), a
      race condition occurs. If the two racing slaves have different
      drivers, this may result in one driver's ioctl handler being
      called with a pointer to a net_device controlled with a different
      driver, resulting in unpredictable breakage.
      
      Unless I am overlooking something, the "static" must be a
      copy'n'paste error (?).
      Signed-off-by: NJiri Bohac <jbohac@suse.cz>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d9d52832
  8. 27 10月, 2009 1 次提交
  9. 24 10月, 2009 1 次提交
  10. 13 10月, 2009 1 次提交
  11. 12 10月, 2009 1 次提交
  12. 08 10月, 2009 2 次提交
  13. 07 10月, 2009 1 次提交
    • J
      bonding: introduce primary_reselect option · a549952a
      Jiri Pirko 提交于
      In some cases there is not desirable to switch back to primary interface when
      it's link recovers and rather stay with currently active one. We need to avoid
      packetloss as much as we can in some cases. This is solved by introducing
      primary_reselect option. Note that enslaved primary slave is set as current
      active no matter what.
      
      Patch modified by Jay Vosburgh as follows: fixed bug in action
      after change of option setting via sysfs, revised the documentation
      update, and bumped the bonding version number.
      Signed-off-by: NJiri Pirko <jpirko@redhat.com>
      Signed-off-by: NJay Vosburgh <fubar@us.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a549952a
  14. 02 10月, 2009 1 次提交
  15. 21 9月, 2009 1 次提交
  16. 17 9月, 2009 1 次提交
  17. 15 9月, 2009 1 次提交
  18. 02 9月, 2009 1 次提交
  19. 01 9月, 2009 1 次提交
  20. 29 8月, 2009 4 次提交
  21. 14 8月, 2009 1 次提交
  22. 17 7月, 2009 1 次提交
    • M
      bonding: clean muticast addresses when device changes type · e36b9d16
      Moni Shoua 提交于
      Bonding device forbids slave device of different types under the same
      master.
      
      However, it is possible for a bonding master to change type during its
      lifetime.  This can be either from ARPHRD_ETHER to ARPHRD_INFINIBAND
      or the other way arround.  The change of type requires device level
      multicast address cleanup because device level multicast addresses
      depend on the device type.
      
      The patch adds a call to dev_close() before the bonding master changes
      type and dev_open() just after that.
      
      In the example below I enslaved an IPoIB device (ib0) under
      bond0. Since each bonding master starts as device of type ARPHRD_ETHER
      by default, a change of type occurs when ib0 is enslaved.
      
      This is how /proc/net/dev_mcast looks like without the patch
      
      5    bond0           1     0     00ffffffff12601bffff000000000001ff96ca05
      5    bond0           1     0     01005e000116
      5    bond0           1     0     01005e7ffffd
      5    bond0           1     0     01005e000001
      5    bond0           1     0     333300000001
      6    ib0             1     0     00ffffffff12601bffff000000000001ff96ca05
      6    ib0             1     0     333300000001
      6    ib0             1     0     01005e000001
      6    ib0             1     0     01005e7ffffd
      6    ib0             1     0     01005e000116
      6    ib0             1     0     00ffffffff12401bffff00000000000000000001
      6    ib0             1     0     00ffffffff12601bffff00000000000000000001
      
      and this is how it looks like after the patch.
      
      5    bond0           1     0     00ffffffff12601bffff000000000001ff96ca05
      5    bond0           1     0     00ffffffff12601bffff00000000000000000001
      5    bond0           1     0     00ffffffff12401bffff0000000000000ffffffd
      5    bond0           1     0     00ffffffff12401bffff00000000000000000116
      5    bond0           1     0     00ffffffff12401bffff00000000000000000001
      6    ib0             1     0     00ffffffff12601bffff000000000001ff96ca05
      6    ib0             1     0     00ffffffff12401bffff00000000000000000116
      6    ib0             1     0     00ffffffff12401bffff0000000000000ffffffd
      6    ib0             2     0     00ffffffff12401bffff00000000000000000001
      6    ib0             2     0     00ffffffff12601bffff00000000000000000001
      Signed-off-by: NMoni Shoua <monis@voltaire.com>
      Signed-off-by: NJay Vosburgh <fubar@us.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      e36b9d16
  23. 13 7月, 2009 1 次提交
  24. 06 7月, 2009 1 次提交
  25. 14 6月, 2009 6 次提交