diff options
Diffstat (limited to 'net/ipv6/udp.c')
-rw-r--r-- | net/ipv6/udp.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/net/ipv6/udp.c b/net/ipv6/udp.c index c2ec41617a35..e51fc3eee6db 100644 --- a/net/ipv6/udp.c +++ b/net/ipv6/udp.c | |||
@@ -525,10 +525,8 @@ csum_copy_err: | |||
525 | } | 525 | } |
526 | unlock_sock_fast(sk, slow); | 526 | unlock_sock_fast(sk, slow); |
527 | 527 | ||
528 | if (noblock) | 528 | /* starting over for a new packet, but check if we need to yield */ |
529 | return -EAGAIN; | 529 | cond_resched(); |
530 | |||
531 | /* starting over for a new packet */ | ||
532 | msg->msg_flags &= ~MSG_TRUNC; | 530 | msg->msg_flags &= ~MSG_TRUNC; |
533 | goto try_again; | 531 | goto try_again; |
534 | } | 532 | } |