X-Git-Url: https://bbs.cooldavid.org/git/?a=blobdiff_plain;f=net%2Fipv6%2Fudp.c;h=eff050ac7049601e6cc040c14210ac678b16e788;hb=e0f9f8586a0b21fb3c7a4ead3804008d57dfdef7;hp=e251d0ba4f39362b0207d3304ecbd0f748ea98c3;hpb=9ed19f339e12e731986de84134ac293cd15910a7;p=net-next-2.6.git diff --git a/net/ipv6/udp.c b/net/ipv6/udp.c index e251d0ba4f3..eff050ac704 100644 --- a/net/ipv6/udp.c +++ b/net/ipv6/udp.c @@ -300,12 +300,12 @@ csum_copy_err: /* Clear queue. */ if (flags&MSG_PEEK) { int clear = 0; - spin_lock_irq(&sk->sk_receive_queue.lock); + spin_lock_bh(&sk->sk_receive_queue.lock); if (skb == skb_peek(&sk->sk_receive_queue)) { __skb_unlink(skb, &sk->sk_receive_queue); clear = 1; } - spin_unlock_irq(&sk->sk_receive_queue.lock); + spin_unlock_bh(&sk->sk_receive_queue.lock); if (clear) kfree_skb(skb); }