mbox series

[mptcp-next,v2,0/2] mptcp: fix another close hang-up

Message ID cover.1693322440.git.pabeni@redhat.com (mailing list archive)
Headers show
Series mptcp: fix another close hang-up | expand

Message

Paolo Abeni Aug. 29, 2023, 3:39 p.m. UTC
If the TCP subflows close silently due to timeouts, the msk socket
can hang-up indefinitely.

Implement an additional close timeout triggered with the last subflow
close event and move the msk to TCP_CLOSE when it fires.

Should address issues/430 and issues/431.

v1 -> v2:
 - fix timeout timer scheduling in patch 2/2 (timeout never fired on v1)

Paolo Abeni (2):
  mptcp: rename timer related helper to less confusing names
  mptcp: implement connection level timeout.

 net/mptcp/protocol.c | 123 +++++++++++++++++++++----------------------
 net/mptcp/protocol.h |  22 +++++++-
 net/mptcp/subflow.c  |   3 +-
 3 files changed, 84 insertions(+), 64 deletions(-)

Comments

Paolo Abeni Aug. 30, 2023, 3:30 p.m. UTC | #1
On Tue, 2023-08-29 at 17:39 +0200, Paolo Abeni wrote:
> If the TCP subflows close silently due to timeouts, the msk socket
> can hang-up indefinitely.
> 
> Implement an additional close timeout triggered with the last subflow
> close event and move the msk to TCP_CLOSE when it fires.
> 
> Should address issues/430 and issues/431.
> 
> v1 -> v2:
>  - fix timeout timer scheduling in patch 2/2 (timeout never fired on v1)
 
As per last Daire feedback, even this revision don't fix the issue for
good, so please this series on-old.

I think that at very least this does not set/trigger the socket error
at close time, plus possibly we will need to make the timeout
configurable.

/P