diff --git a/[refs] b/[refs] index 43215128a0c4..f249b2c69cff 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: ae878ae280bea286ff2b1e1cb6e609dd8cb4501d +refs/heads/master: 482964e56e1320cb7952faa1932d8ecf59c4bf75 diff --git a/trunk/net/core/stream.c b/trunk/net/core/stream.c index d959e0f41528..f5df85dcd20b 100644 --- a/trunk/net/core/stream.c +++ b/trunk/net/core/stream.c @@ -141,10 +141,10 @@ int sk_stream_wait_memory(struct sock *sk, long *timeo_p) set_bit(SOCK_NOSPACE, &sk->sk_socket->flags); sk->sk_write_pending++; - sk_wait_event(sk, ¤t_timeo, !sk->sk_err && - !(sk->sk_shutdown & SEND_SHUTDOWN) && - sk_stream_memory_free(sk) && - vm_wait); + sk_wait_event(sk, ¤t_timeo, sk->sk_err || + (sk->sk_shutdown & SEND_SHUTDOWN) || + (sk_stream_memory_free(sk) && + !vm_wait)); sk->sk_write_pending--; if (vm_wait) {