06 Oct, 2010

1 commit


05 Jun, 2010

1 commit

  • v2: changed bonding module version, modified to apply on top of changes
    from previous patch in series, and updated documentation to elaborate on
    multiqueue awareness that now exists in bonding driver.

    This patch give the user the ability to control the output slave for
    round-robin and active-backup bonding. Similar functionality was
    discussed in the past, but Jay Vosburgh indicated he would rather see a
    feature like this added to existing modes rather than creating a
    completely new mode. Jay's thoughts as well as Neil's input surrounding
    some of the issues with the first implementation pushed us toward a
    design that relied on the queue_mapping rather than skb marks.
    Round-robin and active-backup modes were chosen as the first users of
    this slave selection as they seemed like the most logical choices when
    considering a multi-switch environment.

    Round-robin mode works without any modification, but active-backup does
    require inclusion of the first patch in this series and setting
    the 'all_slaves_active' flag. This will allow reception of unicast traffic on
    any of the backup interfaces.

    This was tested with IPv4-based filters as well as VLAN-based filters
    with good results.

    More information as well as a configuration example is available in the
    patch to Documentation/networking/bonding.txt.

    Signed-off-by: Andy Gospodarek
    Signed-off-by: Neil Horman
    Signed-off-by: David S. Miller

    Andy Gospodarek
     

05 Nov, 2009

1 commit

  • This cleanup patch puts struct/union/enum opening braces,
    in first line to ease grep games.

    struct something
    {

    becomes :

    struct something {

    Signed-off-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Eric Dumazet
     

08 Dec, 2007

1 commit

  • Add new hash for balance-xor and 802.3ad modes. Originally
    submitted by "Glenn Griffin" ; modified by
    Jay Vosburgh to move setting of hash policy out of line, tweak the
    documentation update and add version update to 3.2.2.

    Glenn's original comment follows:

    Included is a patch for a new xmit_hash_policy for the bonding driver
    that selects slaves based on MAC and IP information. This is a middle
    ground between what currently exists in the layer2 only policy and the
    layer3+4 policy. This policy strives to be fully 802.3ad compliant by
    transmitting every packet of any particular flow over the same link.
    As documented the layer3+4 policy is not fully compliant for extreme
    cases such as ip fragmentation, so this policy is a nice compromise
    for environments that require full compliance but desire more than the
    layer2 only policy.

    Signed-off-by: "Glenn Griffin"
    Signed-off-by: Jay Vosburgh
    Signed-off-by: Jeff Garzik

    Jay Vosburgh
     

27 Jun, 2005

1 commit

  • Add support for alternate slave selection algorithms to bonding
    balance-xor and 802.3ad modes. Default mode (what we have now: xor of
    MAC addresses) is "layer2", new choice is "layer3+4", using IP and port
    information for hashing to select peer.

    Originally submitted by Jason Gabler for balance-xor mode;
    modified by Jay Vosburgh to additionally support 802.3ad mode. Jason's
    original comment is as follows:

    The attached patch to the Linux Etherchannel Bonding driver modifies the
    driver's "balance-xor" mode as follows:

    - alternate hashing policy support for mode 2
    * Added kernel parameter "xmit_policy" to allow the specification
    of different hashing policies for mode 2. The original mode 2
    policy is the default, now found in xmit_hash_policy_layer2().
    * Added xmit_hash_policy_layer34()

    This patch was inspired by hashing policies implemented by Cisco,
    Foundry and IBM, which are explained in
    Foundry documentation found at:
    http://www.foundrynet.com/services/documentation/sribcg/Trunking.html#112750

    Signed-off-by: Jason Gabler
    Signed-off-by: Jay Vosburgh

    Jay Vosburgh
     

17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds