OSDN Git Service

tcp: purge write queue upon aborting the connection
authorSoheil Hassas Yeganeh <soheil@google.com>
Tue, 6 Mar 2018 22:15:12 +0000 (17:15 -0500)
committerDavid S. Miller <davem@davemloft.net>
Wed, 7 Mar 2018 20:01:03 +0000 (15:01 -0500)
commite05836ac07c77dd90377f8c8140bce2a44af5fe7
treefbf70fdea597a6314f173d507e72bc9069748b40
parent67f93df79aeefc3add4e4b31a752600f834236e2
tcp: purge write queue upon aborting the connection

When the connection is aborted, there is no point in
keeping the packets on the write queue until the connection
is closed.

Similar to a27fd7a8ed38 ('tcp: purge write queue upon RST'),
this is essential for a correct MSG_ZEROCOPY implementation,
because userspace cannot call close(fd) before receiving
zerocopy signals even when the connection is aborted.

Fixes: f214f915e7db ("tcp: enable MSG_ZEROCOPY")
Signed-off-by: Soheil Hassas Yeganeh <soheil@google.com>
Signed-off-by: Neal Cardwell <ncardwell@google.com>
Reviewed-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: Yuchung Cheng <ycheng@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/tcp.c
net/ipv4/tcp_timer.c