diff options
-rw-r--r-- | net/rxrpc/ar-recvmsg.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/net/rxrpc/ar-recvmsg.c b/net/rxrpc/ar-recvmsg.c index 898492a8d61b..64cba2e35156 100644 --- a/net/rxrpc/ar-recvmsg.c +++ b/net/rxrpc/ar-recvmsg.c | |||
@@ -353,6 +353,10 @@ csum_copy_error: | |||
353 | if (continue_call) | 353 | if (continue_call) |
354 | rxrpc_put_call(continue_call); | 354 | rxrpc_put_call(continue_call); |
355 | rxrpc_kill_skb(skb); | 355 | rxrpc_kill_skb(skb); |
356 | if (!(flags & MSG_PEEK)) { | ||
357 | if (skb_dequeue(&rx->sk.sk_receive_queue) != skb) | ||
358 | BUG(); | ||
359 | } | ||
356 | skb_kill_datagram(&rx->sk, skb, flags); | 360 | skb_kill_datagram(&rx->sk, skb, flags); |
357 | rxrpc_put_call(call); | 361 | rxrpc_put_call(call); |
358 | return -EAGAIN; | 362 | return -EAGAIN; |