Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4335d60e authored by dingtianhong's avatar dingtianhong Committed by David S. Miller
Browse files

bonding: use rcu_dereference() to access curr_active_slave



The bond_info_show_master already in RCU read-side critical section,
and the we access curr_active_slave without the curr_slave_lock, we
could not sure whether the curr_active_slave will be changed during
the processing, so use RCU to protected the pointer.

Cc: Jay Vosburgh <fubar@us.ibm.com>
Cc: Veaceslav Falico <vfalico@redhat.com>
Cc: Andy Gospodarek <andy@greyhouse.net>
Signed-off-by: default avatarDing Tianhong <dingtianhong@huawei.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 82741808
Loading
Loading
Loading
Loading
+1 −3
Original line number Diff line number Diff line
@@ -69,9 +69,7 @@ static void bond_info_show_master(struct seq_file *seq)
	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));