mm: add documentation describing what tsk->active_mm means vs tsk->mm
[safe/jmp/linux-2.6] / Documentation / networking / bonding.txt
index a0cda06..5ede747 100644 (file)
@@ -194,6 +194,48 @@ or, for backwards compatibility, the option value.  E.g.,
 
        The parameters are as follows:
 
+ad_select
+
+       Specifies the 802.3ad aggregation selection logic to use.  The
+       possible values and their effects are:
+
+       stable or 0
+
+               The active aggregator is chosen by largest aggregate
+               bandwidth.
+
+               Reselection of the active aggregator occurs only when all
+               slaves of the active aggregator are down or the active
+               aggregator has no slaves.
+
+               This is the default value.
+
+       bandwidth or 1
+
+               The active aggregator is chosen by largest aggregate
+               bandwidth.  Reselection occurs if:
+
+               - A slave is added to or removed from the bond
+
+               - Any slave's link state changes
+
+               - Any slave's 802.3ad association state changes
+
+               - The bond's adminstrative state changes to up
+
+       count or 2
+
+               The active aggregator is chosen by the largest number of
+               ports (slaves).  Reselection occurs as described under the
+               "bandwidth" setting, above.
+
+       The bandwidth and count selection policies permit failover of
+       802.3ad aggregations when partial failure of the active aggregator
+       occurs.  This keeps the aggregator with the highest availability
+       (either in bandwidth or in number of ports) active at all times.
+
+       This option was added in bonding version 3.4.0.
+
 arp_interval
 
        Specifies the ARP link monitoring frequency in milliseconds.
@@ -289,35 +331,73 @@ downdelay
 fail_over_mac
 
        Specifies whether active-backup mode should set all slaves to
-       the same MAC address (the traditional behavior), or, when
-       enabled, change the bond's MAC address when changing the
-       active interface (i.e., fail over the MAC address itself).
-
-       Fail over MAC is useful for devices that cannot ever alter
-       their MAC address, or for devices that refuse incoming
-       broadcasts with their own source MAC (which interferes with
-       the ARP monitor).
-
-       The down side of fail over MAC is that every device on the
-       network must be updated via gratuitous ARP, vs. just updating
-       a switch or set of switches (which often takes place for any
-       traffic, not just ARP traffic, if the switch snoops incoming
-       traffic to update its tables) for the traditional method.  If
-       the gratuitous ARP is lost, communication may be disrupted.
-
-       When fail over MAC is used in conjuction with the mii monitor,
-       devices which assert link up prior to being able to actually
-       transmit and receive are particularly susecptible to loss of
-       the gratuitous ARP, and an appropriate updelay setting may be
-       required.
-
-       A value of 0 disables fail over MAC, and is the default.  A
-       value of 1 enables fail over MAC.  This option is enabled
-       automatically if the first slave added cannot change its MAC
-       address.  This option may be modified via sysfs only when no
-       slaves are present in the bond.
-
-       This option was added in bonding version 3.2.0.
+       the same MAC address at enslavement (the traditional
+       behavior), or, when enabled, perform special handling of the
+       bond's MAC address in accordance with the selected policy.
+
+       Possible values are:
+
+       none or 0
+
+               This setting disables fail_over_mac, and causes
+               bonding to set all slaves of an active-backup bond to
+               the same MAC address at enslavement time.  This is the
+               default.
+
+       active or 1
+
+               The "active" fail_over_mac policy indicates that the
+               MAC address of the bond should always be the MAC
+               address of the currently active slave.  The MAC
+               address of the slaves is not changed; instead, the MAC
+               address of the bond changes during a failover.
+
+               This policy is useful for devices that cannot ever
+               alter their MAC address, or for devices that refuse
+               incoming broadcasts with their own source MAC (which
+               interferes with the ARP monitor).
+
+               The down side of this policy is that every device on
+               the network must be updated via gratuitous ARP,
+               vs. just updating a switch or set of switches (which
+               often takes place for any traffic, not just ARP
+               traffic, if the switch snoops incoming traffic to
+               update its tables) for the traditional method.  If the
+               gratuitous ARP is lost, communication may be
+               disrupted.
+
+               When this policy is used in conjuction with the mii
+               monitor, devices which assert link up prior to being
+               able to actually transmit and receive are particularly
+               susecptible to loss of the gratuitous ARP, and an
+               appropriate updelay setting may be required.
+
+       follow or 2
+
+               The "follow" fail_over_mac policy causes the MAC
+               address of the bond to be selected normally (normally
+               the MAC address of the first slave added to the bond).
+               However, the second and subsequent slaves are not set
+               to this MAC address while they are in a backup role; a
+               slave is programmed with the bond's MAC address at
+               failover time (and the formerly active slave receives
+               the newly active slave's MAC address).
+
+               This policy is useful for multiport devices that
+               either become confused or incur a performance penalty
+               when multiple ports are programmed with the same MAC
+               address.
+
+
+       The default policy is none, unless the first slave cannot
+       change its MAC address, in which case the active policy is
+       selected by default.
+
+       This option may be modified via sysfs only when no slaves are
+       present in the bond.
+
+       This option was added in bonding version 3.2.0.  The "follow"
+       policy was added in bonding version 3.3.0.
 
 lacp_rate
 
@@ -338,7 +418,8 @@ max_bonds
        Specifies the number of bonding devices to create for this
        instance of the bonding driver.  E.g., if max_bonds is 3, and
        the bonding driver is not already loaded, then bond0, bond1
-       and bond2 will be created.  The default value is 1.
+       and bond2 will be created.  The default value is 1.  Specifying
+       a value of 0 will load bonding, but will not create any devices.
 
 miimon
 
@@ -501,6 +582,27 @@ mode
                swapped with the new curr_active_slave that was
                chosen.
 
+num_grat_arp
+
+       Specifies the number of gratuitous ARPs to be issued after a
+       failover event.  One gratuitous ARP is issued immediately after
+       the failover, subsequent ARPs are sent at a rate of one per link
+       monitor interval (arp_interval or miimon, whichever is active).
+
+       The valid range is 0 - 255; the default value is 1.  This option
+       affects only the active-backup mode.  This option was added for
+       bonding version 3.3.0.
+
+num_unsol_na
+
+       Specifies the number of unsolicited IPv6 Neighbor Advertisements
+       to be issued after a failover event.  One unsolicited NA is issued
+       immediately after the failover.
+
+       The valid range is 0 - 255; the default value is 1.  This option
+       affects only the active-backup mode.  This option was added for
+       bonding version 3.4.0.
+
 primary
 
        A string (eth0, eth2, etc) specifying which slave is the
@@ -581,7 +683,7 @@ xmit_hash_policy
                in environments where a layer3 gateway device is
                required to reach most destinations.
 
-               This algorithm is 802.3ad complient.
+               This algorithm is 802.3ad compliant.
 
        layer3+4
 
@@ -872,17 +974,19 @@ USERCTL=no
 NETMASK, NETWORK and BROADCAST) to match your network configuration.
 
        For later versions of initscripts, such as that found with Fedora
-7 and Red Hat Enterprise Linux version 5 (or later), it is possible, and,
-indeed, preferable, to specify the bonding options in the ifcfg-bond0
+7 (or later) and Red Hat Enterprise Linux version 5 (or later), it is possible,
+and, indeed, preferable, to specify the bonding options in the ifcfg-bond0
 file, e.g. a line of the format:
 
-BONDING_OPTS="mode=active-backup arp_interval=60 arp_ip_target=+192.168.1.254"
+BONDING_OPTS="mode=active-backup arp_interval=60 arp_ip_target=192.168.1.254"
 
        will configure the bond with the specified options.  The options
 specified in BONDING_OPTS are identical to the bonding module parameters
-except for the arp_ip_target field.  Each target should be included as a
-separate option and should be preceded by a '+' to indicate it should be
-added to the list of queried targets, e.g.,
+except for the arp_ip_target field when using versions of initscripts older
+than and 8.57 (Fedora 8) and 8.45.19 (Red Hat Enterprise Linux 5.2).  When
+using older versions each target should be included as a separate option and
+should be preceded by a '+' to indicate it should be added to the list of
+queried targets, e.g.,
 
        arp_ip_target=+192.168.1.1 arp_ip_target=+192.168.1.2
 
@@ -890,7 +994,7 @@ added to the list of queried targets, e.g.,
 options via BONDING_OPTS, it is not necessary to edit /etc/modules.conf or
 /etc/modprobe.conf.
 
-       For older versions of initscripts that do not support
+       For even older versions of initscripts that do not support
 BONDING_OPTS, it is necessary to edit /etc/modules.conf (or
 /etc/modprobe.conf, depending upon your distro) to load the bonding module
 with your desired options when the bond0 interface is brought up.  The