diff options
Diffstat (limited to 'net/core/sock.c')
-rw-r--r-- | net/core/sock.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/core/sock.c b/net/core/sock.c index 83e11f7260ff..f2ccb1620dc4 100644 --- a/net/core/sock.c +++ b/net/core/sock.c | |||
@@ -1642,7 +1642,7 @@ static void sock_def_readable(struct sock *sk, int len) | |||
1642 | { | 1642 | { |
1643 | read_lock(&sk->sk_callback_lock); | 1643 | read_lock(&sk->sk_callback_lock); |
1644 | if (sk->sk_sleep && waitqueue_active(sk->sk_sleep)) | 1644 | if (sk->sk_sleep && waitqueue_active(sk->sk_sleep)) |
1645 | wake_up_interruptible(sk->sk_sleep); | 1645 | wake_up_interruptible_sync(sk->sk_sleep); |
1646 | sk_wake_async(sk, SOCK_WAKE_WAITD, POLL_IN); | 1646 | sk_wake_async(sk, SOCK_WAKE_WAITD, POLL_IN); |
1647 | read_unlock(&sk->sk_callback_lock); | 1647 | read_unlock(&sk->sk_callback_lock); |
1648 | } | 1648 | } |
@@ -1656,7 +1656,7 @@ static void sock_def_write_space(struct sock *sk) | |||
1656 | */ | 1656 | */ |
1657 | if ((atomic_read(&sk->sk_wmem_alloc) << 1) <= sk->sk_sndbuf) { | 1657 | if ((atomic_read(&sk->sk_wmem_alloc) << 1) <= sk->sk_sndbuf) { |
1658 | if (sk->sk_sleep && waitqueue_active(sk->sk_sleep)) | 1658 | if (sk->sk_sleep && waitqueue_active(sk->sk_sleep)) |
1659 | wake_up_interruptible(sk->sk_sleep); | 1659 | wake_up_interruptible_sync(sk->sk_sleep); |
1660 | 1660 | ||
1661 | /* Should agree with poll, otherwise some programs break */ | 1661 | /* Should agree with poll, otherwise some programs break */ |
1662 | if (sock_writeable(sk)) | 1662 | if (sock_writeable(sk)) |