bonding: bond_create always called with default parameters
authorStephen Hemminger <shemminger@vyatta.com>
Fri, 12 Jun 2009 19:02:44 +0000 (19:02 +0000)
committerDavid S. Miller <davem@davemloft.net>
Sun, 14 Jun 2009 06:28:51 +0000 (23:28 -0700)
bond_create() is always called with same parameters so move the argument
down.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/bonding/bond_main.c
drivers/net/bonding/bond_sysfs.c
drivers/net/bonding/bonding.h

index 2f4329e..a1fa8de 100644 (file)
@@ -101,7 +101,7 @@ static int arp_interval = BOND_LINK_ARP_INTERV;
 static char *arp_ip_target[BOND_MAX_ARP_TARGETS] = { NULL, };
 static char *arp_validate = NULL;
 static char *fail_over_mac = NULL;
-struct bond_params bonding_defaults;
+static struct bond_params bonding_defaults;
 
 module_param(max_bonds, int, 0);
 MODULE_PARM_DESC(max_bonds, "Max number of bonded devices");
@@ -4592,7 +4592,7 @@ static const struct net_device_ops bond_netdev_ops = {
  * Does not allocate but creates a /proc entry.
  * Allowed to fail.
  */
-static int bond_init(struct net_device *bond_dev, struct bond_params *params)
+static int bond_init(struct net_device *bond_dev)
 {
        struct bonding *bond = netdev_priv(bond_dev);
 
@@ -4602,7 +4602,7 @@ static int bond_init(struct net_device *bond_dev, struct bond_params *params)
        rwlock_init(&bond->lock);
        rwlock_init(&bond->curr_slave_lock);
 
-       bond->params = *params; /* copy params struct */
+       bond->params = bonding_defaults;
 
        bond->wq = create_singlethread_workqueue(bond_dev->name);
        if (!bond->wq)
@@ -5116,7 +5116,7 @@ static void bond_set_lockdep_class(struct net_device *dev)
  * Caller must NOT hold rtnl_lock; we need to release it here before we
  * set up our sysfs entries.
  */
-int bond_create(char *name, struct bond_params *params)
+int bond_create(const char *name)
 {
        struct net_device *bond_dev;
        struct bonding *bond;
@@ -5159,7 +5159,7 @@ int bond_create(char *name, struct bond_params *params)
         * need to set function pointers.
         */
 
-       res = bond_init(bond_dev, params);
+       res = bond_init(bond_dev);
        if (res < 0) {
                goto out_netdev;
        }
@@ -5212,7 +5212,7 @@ static int __init bonding_init(void)
        init_rwsem(&bonding_rwsem);
 
        for (i = 0; i < max_bonds; i++) {
-               res = bond_create(NULL, &bonding_defaults);
+               res = bond_create(NULL);
                if (res)
                        goto err;
        }
index 5fb861a..1172fe6 100644 (file)
@@ -112,7 +112,7 @@ static ssize_t bonding_store_bonds(struct class *cls, const char *buffer, size_t
        if (command[0] == '+') {
                printk(KERN_INFO DRV_NAME
                        ": %s is being created...\n", ifname);
-               rv = bond_create(ifname, &bonding_defaults);
+               rv = bond_create(ifname);
                if (rv) {
                        printk(KERN_INFO DRV_NAME ": Bond creation failed.\n");
                        res = rv;
index 41ceca1..a6efa09 100644 (file)
@@ -321,7 +321,7 @@ static inline void bond_unset_master_alb_flags(struct bonding *bond)
 
 struct vlan_entry *bond_next_vlan(struct bonding *bond, struct vlan_entry *curr);
 int bond_dev_queue_xmit(struct bonding *bond, struct sk_buff *skb, struct net_device *slave_dev);
-int bond_create(char *name, struct bond_params *params);
+int bond_create(const char *name);
 void bond_destroy(struct bonding *bond);
 int  bond_release_and_destroy(struct net_device *bond_dev, struct net_device *slave_dev);
 int bond_create_sysfs(void);
@@ -349,7 +349,6 @@ extern const struct bond_parm_tbl bond_mode_tbl[];
 extern const struct bond_parm_tbl xmit_hashtype_tbl[];
 extern const struct bond_parm_tbl arp_validate_tbl[];
 extern const struct bond_parm_tbl fail_over_mac_tbl[];
-extern struct bond_params bonding_defaults;
 extern struct bond_parm_tbl ad_select_tbl[];
 
 /* exported from bond_sysfs.c */