|
@@ -379,7 +379,7 @@ static int __udp6_lib_mcast_deliver(struct net *net, struct sk_buff *skb,
|
|
|
uh->source, saddr, dif))) {
|
|
|
struct sk_buff *buff = skb_clone(skb, GFP_ATOMIC);
|
|
|
if (buff) {
|
|
|
- bh_lock_sock_nested(sk2);
|
|
|
+ bh_lock_sock(sk2);
|
|
|
if (!sock_owned_by_user(sk2))
|
|
|
udpv6_queue_rcv_skb(sk2, buff);
|
|
|
else
|
|
@@ -387,7 +387,7 @@ static int __udp6_lib_mcast_deliver(struct net *net, struct sk_buff *skb,
|
|
|
bh_unlock_sock(sk2);
|
|
|
}
|
|
|
}
|
|
|
- bh_lock_sock_nested(sk);
|
|
|
+ bh_lock_sock(sk);
|
|
|
if (!sock_owned_by_user(sk))
|
|
|
udpv6_queue_rcv_skb(sk, skb);
|
|
|
else
|
|
@@ -508,7 +508,7 @@ int __udp6_lib_rcv(struct sk_buff *skb, struct hlist_head udptable[],
|
|
|
|
|
|
/* deliver */
|
|
|
|
|
|
- bh_lock_sock_nested(sk);
|
|
|
+ bh_lock_sock(sk);
|
|
|
if (!sock_owned_by_user(sk))
|
|
|
udpv6_queue_rcv_skb(sk, skb);
|
|
|
else
|