Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
[deliverable/linux.git] / net / unix / af_unix.c
index 45aebd966978bdc6abb886487d029957036bdda4..502e572af3fd16e5135f76692cfe2287bca99d3c 100644 (file)
@@ -451,7 +451,7 @@ static void unix_write_space(struct sock *sk)
        rcu_read_lock();
        if (unix_writable(sk)) {
                wq = rcu_dereference(sk->sk_wq);
-               if (wq_has_sleeper(wq))
+               if (skwq_has_sleeper(wq))
                        wake_up_interruptible_sync_poll(&wq->wait,
                                POLLOUT | POLLWRNORM | POLLWRBAND);
                sk_wake_async(sk, SOCK_WAKE_SPACE, POLL_OUT);
@@ -2109,8 +2109,10 @@ static int unix_dgram_recvmsg(struct socket *sock, struct msghdr *msg,
                goto out_unlock;
        }
 
-       wake_up_interruptible_sync_poll(&u->peer_wait,
-                                       POLLOUT | POLLWRNORM | POLLWRBAND);
+       if (wq_has_sleeper(&u->peer_wait))
+               wake_up_interruptible_sync_poll(&u->peer_wait,
+                                               POLLOUT | POLLWRNORM |
+                                               POLLWRBAND);
 
        if (msg->msg_name)
                unix_copy_addr(msg, skb->sk);
This page took 0.025333 seconds and 5 git commands to generate.