Merge branch 'bonding_rcu'
authorDavid S. Miller <davem@davemloft.net>
Tue, 14 Jan 2014 06:22:35 +0000 (22:22 -0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 14 Jan 2014 06:22:35 +0000 (22:22 -0800)
Veaceslav Falico says:

====================
bonding: fix bond_3ad RCU usage

While digging through bond_3ad.c I've found that the RCU usage there is
just wrong - it's used as a kind of mutex/spinlock instead of RCU.

v3->v4: remove useless goto and wrap __get_first_agg() in proper RCU.

v2->v3: make bond_3ad_set_carrier() use RCU read lock for the whole
function, so that all other functions will be protected by RCU as well.
This way we can use _rcu variants everywhere.

v1->v2: use generic primitives instead of _rcu ones cause we can hold RTNL
lock without RCU one, which is still safe.

This patchset is on top of bond_3ad.c cleanup:
http://www.spinics.net/lists/netdev/msg265447.html
====================

Signed-off-by: David S. Miller <davem@davemloft.net>

Trivial merge