mptcp: fix bogus sendmsg() return code under pressure
[linux-2.6-microblaze.git] / net / mptcp / protocol.c
index 400824e..8c1d1a5 100644 (file)
@@ -984,7 +984,6 @@ wait_for_sndbuf:
 
        mptcp_set_timeout(sk, ssk);
        if (copied) {
-               ret = copied;
                tcp_push(ssk, msg->msg_flags, mss_now, tcp_sk(ssk)->nonagle,
                         size_goal);
 
@@ -997,7 +996,7 @@ wait_for_sndbuf:
        release_sock(ssk);
 out:
        release_sock(sk);
-       return ret;
+       return copied ? : ret;
 }
 
 static void mptcp_wait_data(struct sock *sk, long *timeo)