]> err.no Git - linux-2.6/blobdiff - drivers/net/bonding/bonding.h
Merge branch 'davem-next' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
[linux-2.6] / drivers / net / bonding / bonding.h
index 46a2ed507b3325f3c9d842bed936c921dcb9a7a7..fb730ec0396f59b1879b5908d909e3f85a273633 100644 (file)
@@ -22,8 +22,8 @@
 #include "bond_3ad.h"
 #include "bond_alb.h"
 
-#define DRV_VERSION    "3.2.5"
-#define DRV_RELDATE    "March 21, 2008"
+#define DRV_VERSION    "3.3.0"
+#define DRV_RELDATE    "June 10, 2008"
 #define DRV_NAME       "bonding"
 #define DRV_DESCRIPTION        "Ethernet Channel Bonding Driver"
 
@@ -158,6 +158,7 @@ struct slave {
        unsigned long jiffies;
        unsigned long last_arp_rx;
        s8     link;    /* one of BOND_LINK_XXXX */
+       s8     new_link;
        s8     state;   /* one of BOND_STATE_XXXX */
        u32    original_flags;
        u32    original_mtu;
@@ -169,6 +170,11 @@ struct slave {
        struct tlb_slave_info tlb_info;
 };
 
+/*
+ * Link pseudo-state only used internally by monitors
+ */
+#define BOND_LINK_NOCHANGE -1
+
 /*
  * Here are the locking policies for the two bonding locks:
  *
@@ -242,6 +248,10 @@ static inline struct bonding *bond_get_bond_by_slave(struct slave *slave)
        return (struct bonding *)slave->dev->master->priv;
 }
 
+#define BOND_FOM_NONE                  0
+#define BOND_FOM_ACTIVE                        1
+#define BOND_FOM_FOLLOW                        2
+
 #define BOND_ARP_VALIDATE_NONE         0
 #define BOND_ARP_VALIDATE_ACTIVE       (1 << BOND_STATE_ACTIVE)
 #define BOND_ARP_VALIDATE_BACKUP       (1 << BOND_STATE_BACKUP)