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)
commit2afe02eed1ac565e5ba90254706e67f670ae41a2
tree8cf62ce9ae669d5587bbc7b9dc8ee504eecaed56
parent853dc21bfe15f545347b5c82aad02735d552110d
parent49b7624eda6867d2803bcc5bbf6f25936184304a
Merge branch 'bonding_rcu'

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>