]> git.baikalelectronics.ru Git - kernel.git/commit
mptcp: use delegate action to schedule 3rd ack retrans
authorPaolo Abeni <pabeni@redhat.com>
Fri, 19 Nov 2021 14:27:55 +0000 (15:27 +0100)
committerDavid S. Miller <davem@davemloft.net>
Sat, 20 Nov 2021 14:24:00 +0000 (14:24 +0000)
commit69294142d2cd66f69d3dfd4c69f8d9a1d73aae70
treeca2ece9d265062219bf920c4c441f2eb7017c998
parenta393c076f8773609234f2c265fce02a96815f48b
mptcp: use delegate action to schedule 3rd ack retrans

Scheduling a delack in mptcp_established_options_mp() is
not a good idea: such function is called by tcp_send_ack() and
the pending delayed ack will be cleared shortly after by the
tcp_event_ack_sent() call in __tcp_transmit_skb().

Instead use the mptcp delegated action infrastructure to
schedule the delayed ack after the current bh processing completes.

Additionally moves the schedule_3rdack_retransmission() helper
into protocol.c to avoid making it visible in a different compilation
unit.

Fixes: 8e381f2c7ea7c480 ("mptcp: Add handling of outgoing MP_JOIN requests")
Reviewed-by: Mat Martineau <mathew.j.martineau>@linux.intel.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/mptcp/options.c
net/mptcp/protocol.c
net/mptcp/protocol.h