Merge tag 'io_uring-worker.v3-2021-02-25' of git://git.kernel.dk/linux-block
[linux-2.6-microblaze.git] / net / mptcp / subflow.c
index 06e2334..e1fbcab 100644 (file)
@@ -1096,6 +1096,12 @@ static void subflow_data_ready(struct sock *sk)
 
        msk = mptcp_sk(parent);
        if (state & TCPF_LISTEN) {
+               /* MPJ subflow are removed from accept queue before reaching here,
+                * avoid stray wakeups
+                */
+               if (reqsk_queue_empty(&inet_csk(sk)->icsk_accept_queue))
+                       return;
+
                set_bit(MPTCP_DATA_READY, &msk->flags);
                parent->sk_data_ready(parent);
                return;