diff options
| author | Takashi Iwai <tiwai@suse.de> | 2015-03-09 08:42:00 +0100 |
|---|---|---|
| committer | Takashi Iwai <tiwai@suse.de> | 2015-03-09 08:42:00 +0100 |
| commit | 4aa01c408b7022c620241b373d4c3707a2ebeab6 (patch) | |
| tree | 25df2a7453ec3bf7fc82f2871756b4efd6d3d283 /net/core/skbuff.c | |
| parent | 5371fc0ecdf55b6811ade8a198de8ace2f4e5861 (diff) | |
| parent | a1f3f1ca66bd12c339b17a0c2ef93a093f90a277 (diff) | |
Merge branch 'for-linus' into for-next
Merging the HD-audio fixes back to base devel branch for further
working on it.
Diffstat (limited to 'net/core/skbuff.c')
| -rw-r--r-- | net/core/skbuff.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/net/core/skbuff.c b/net/core/skbuff.c index 88c613eab142..f80507823531 100644 --- a/net/core/skbuff.c +++ b/net/core/skbuff.c @@ -3621,13 +3621,14 @@ struct sk_buff *sock_dequeue_err_skb(struct sock *sk) { struct sk_buff_head *q = &sk->sk_error_queue; struct sk_buff *skb, *skb_next; + unsigned long flags; int err = 0; - spin_lock_bh(&q->lock); + spin_lock_irqsave(&q->lock, flags); skb = __skb_dequeue(q); if (skb && (skb_next = skb_peek(q))) err = SKB_EXT_ERR(skb_next)->ee.ee_errno; - spin_unlock_bh(&q->lock); + spin_unlock_irqrestore(&q->lock, flags); sk->sk_err = err; if (err) |
