diff --git a/[refs] b/[refs] index f34e6b8e6f61..a0ac0a9cad33 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2359a47671fc4fb0fe5e9945f76c2cb10792c0f8 +refs/heads/master: 3a7f8c34fefb109903af9a0fac6d0d05f93335c5 diff --git a/trunk/drivers/net/macvtap.c b/trunk/drivers/net/macvtap.c index 0737bd4d1669..0f0f9ce3a776 100644 --- a/trunk/drivers/net/macvtap.c +++ b/trunk/drivers/net/macvtap.c @@ -94,7 +94,8 @@ static int get_slot(struct macvlan_dev *vlan, struct macvtap_queue *q) int i; for (i = 0; i < MAX_MACVTAP_QUEUES; i++) { - if (rcu_dereference(vlan->taps[i]) == q) + if (rcu_dereference_protected(vlan->taps[i], + lockdep_is_held(&macvtap_lock)) == q) return i; }