bonding: fix const in options processing
[cascardo/linux.git] / drivers / net / bonding / bond_procfs.c
index fb868d6..013fdd0 100644 (file)
@@ -65,37 +65,42 @@ static void bond_info_seq_stop(struct seq_file *seq, void *v)
 static void bond_info_show_master(struct seq_file *seq)
 {
        struct bonding *bond = seq->private;
+       const struct bond_opt_value *optval;
        struct slave *curr;
        int i;
 
-       read_lock(&bond->curr_slave_lock);
-       curr = bond->curr_active_slave;
-       read_unlock(&bond->curr_slave_lock);
+       curr = rcu_dereference(bond->curr_active_slave);
 
        seq_printf(seq, "Bonding Mode: %s",
                   bond_mode_name(bond->params.mode));
 
        if (bond->params.mode == BOND_MODE_ACTIVEBACKUP &&
-           bond->params.fail_over_mac)
-               seq_printf(seq, " (fail_over_mac %s)",
-                  fail_over_mac_tbl[bond->params.fail_over_mac].modename);
+           bond->params.fail_over_mac) {
+               optval = bond_opt_get_val(BOND_OPT_FAIL_OVER_MAC,
+                                         bond->params.fail_over_mac);
+               seq_printf(seq, " (fail_over_mac %s)", optval->string);
+       }
 
        seq_printf(seq, "\n");
 
        if (bond->params.mode == BOND_MODE_XOR ||
                bond->params.mode == BOND_MODE_8023AD) {
+               optval = bond_opt_get_val(BOND_OPT_XMIT_HASH,
+                                         bond->params.xmit_policy);
                seq_printf(seq, "Transmit Hash Policy: %s (%d)\n",
-                       xmit_hashtype_tbl[bond->params.xmit_policy].modename,
-                       bond->params.xmit_policy);
+                          optval->string, bond->params.xmit_policy);
        }
 
        if (USES_PRIMARY(bond->params.mode)) {
                seq_printf(seq, "Primary Slave: %s",
                           (bond->primary_slave) ?
                           bond->primary_slave->dev->name : "None");
-               if (bond->primary_slave)
+               if (bond->primary_slave) {
+                       optval = bond_opt_get_val(BOND_OPT_PRIMARY_RESELECT,
+                                                 bond->params.primary_reselect);
                        seq_printf(seq, " (primary_reselect %s)",
-                  pri_reselect_tbl[bond->params.primary_reselect].modename);
+                                  optval->string);
+               }
 
                seq_printf(seq, "\nCurrently Active Slave: %s\n",
                           (curr) ? curr->dev->name : "None");
@@ -136,8 +141,10 @@ static void bond_info_show_master(struct seq_file *seq)
                seq_printf(seq, "LACP rate: %s\n",
                           (bond->params.lacp_fast) ? "fast" : "slow");
                seq_printf(seq, "Min links: %d\n", bond->params.min_links);
+               optval = bond_opt_get_val(BOND_OPT_AD_SELECT,
+                                         bond->params.ad_select);
                seq_printf(seq, "Aggregator selection policy (ad_select): %s\n",
-                          ad_select_tbl[bond->params.ad_select].modename);
+                          optval->string);
 
                if (__bond_3ad_get_active_agg_info(bond, &ad_info)) {
                        seq_printf(seq, "bond %s has no active aggregator\n",
@@ -159,18 +166,6 @@ static void bond_info_show_master(struct seq_file *seq)
        }
 }
 
-static const char *bond_slave_link_status(s8 link)
-{
-       static const char * const status[] = {
-               [BOND_LINK_UP] = "up",
-               [BOND_LINK_FAIL] = "going down",
-               [BOND_LINK_DOWN] = "down",
-               [BOND_LINK_BACK] = "going back",
-       };
-
-       return status[link];
-}
-
 static void bond_info_show_slave(struct seq_file *seq,
                                 const struct slave *slave)
 {
@@ -257,8 +252,8 @@ void bond_create_proc_entry(struct bonding *bond)
                                                    S_IRUGO, bn->proc_dir,
                                                    &bond_info_fops, bond);
                if (bond->proc_entry == NULL)
-                       pr_warning("Warning: Cannot create /proc/net/%s/%s\n",
-                                  DRV_NAME, bond_dev->name);
+                       pr_warn("Warning: Cannot create /proc/net/%s/%s\n",
+                               DRV_NAME, bond_dev->name);
                else
                        memcpy(bond->proc_file_name, bond_dev->name, IFNAMSIZ);
        }
@@ -284,8 +279,8 @@ void __net_init bond_create_proc_dir(struct bond_net *bn)
        if (!bn->proc_dir) {
                bn->proc_dir = proc_mkdir(DRV_NAME, bn->net->proc_net);
                if (!bn->proc_dir)
-                       pr_warning("Warning: cannot create /proc/net/%s\n",
-                                  DRV_NAME);
+                       pr_warn("Warning: Cannot create /proc/net/%s\n",
+                               DRV_NAME);
        }
 }