diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c index 7c6c99dcc96283f955ea66002def010fbeacfeaa..164659f2d636d39835850a5ffbe754c08f523ada 100644 --- a/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c @@ -4769,6 +4769,9 @@ int tcp_send_rcvq(struct sock *sk, struct msghdr *msg, size_t size) struct tcphdr *th; bool fragstolen; + if (tcp_try_rmem_schedule(sk, size + sizeof(*th))) + goto err; + skb = alloc_skb(size + sizeof(*th), sk->sk_allocation); if (!skb) goto err;