|
@@ -3209,7 +3209,7 @@ out:
|
|
|
#ifdef CONFIG_PROC_FS
|
|
|
|
|
|
static void *bond_info_seq_start(struct seq_file *seq, loff_t *pos)
|
|
|
- __acquires(&dev_base_lock)
|
|
|
+ __acquires(RCU)
|
|
|
__acquires(&bond->lock)
|
|
|
{
|
|
|
struct bonding *bond = seq->private;
|
|
@@ -3218,7 +3218,7 @@ static void *bond_info_seq_start(struct seq_file *seq, loff_t *pos)
|
|
|
int i;
|
|
|
|
|
|
/* make sure the bond won't be taken away */
|
|
|
- read_lock(&dev_base_lock);
|
|
|
+ rcu_read_lock();
|
|
|
read_lock(&bond->lock);
|
|
|
|
|
|
if (*pos == 0)
|
|
@@ -3248,12 +3248,12 @@ static void *bond_info_seq_next(struct seq_file *seq, void *v, loff_t *pos)
|
|
|
|
|
|
static void bond_info_seq_stop(struct seq_file *seq, void *v)
|
|
|
__releases(&bond->lock)
|
|
|
- __releases(&dev_base_lock)
|
|
|
+ __releases(RCU)
|
|
|
{
|
|
|
struct bonding *bond = seq->private;
|
|
|
|
|
|
read_unlock(&bond->lock);
|
|
|
- read_unlock(&dev_base_lock);
|
|
|
+ rcu_read_unlock();
|
|
|
}
|
|
|
|
|
|
static void bond_info_show_master(struct seq_file *seq)
|