diff options
| author | Stefano Brivio <sbrivio@redhat.com> | 2025-08-29 22:11:32 +0200 |
|---|---|---|
| committer | Stefano Brivio <sbrivio@redhat.com> | 2025-09-11 17:03:46 +0200 |
| commit | bde1847960cfecc46d8bbf203b931705f2922d31 (patch) | |
| tree | d19bc6e08949084ba83ab4b86a355117c7179eec /doc | |
| parent | 660cd6907e14a41ad9bc77d317140c70ab416fce (diff) | |
| download | passt-bde1847960cfecc46d8bbf203b931705f2922d31.tar passt-bde1847960cfecc46d8bbf203b931705f2922d31.tar.gz passt-bde1847960cfecc46d8bbf203b931705f2922d31.tar.bz2 passt-bde1847960cfecc46d8bbf203b931705f2922d31.tar.lz passt-bde1847960cfecc46d8bbf203b931705f2922d31.tar.xz passt-bde1847960cfecc46d8bbf203b931705f2922d31.tar.zst passt-bde1847960cfecc46d8bbf203b931705f2922d31.zip | |
tcp: Fast re-transmit if half-closed, make TAP_FIN_RCVD path consistent
We currently have a number of discrepancies in the tcp_tap_handler()
path between the half-closed connection path and the regular one, and
they are mostly a result of code duplication, which comes in turn from
the fact that tcp_data_from_tap() deals with data transfers as well as
general connection bookkeeping, so we can't use it for half-closed
connections.
This suggests that we should probably rework it into two or more
functions, in the long term, but for the moment being I'm just fixing
one obvious issue, which is the lack of fast retransmissions in the
TAP_FIN_RCVD path, and a potential one, which is the fact we don't
handle socket flush failures.
Add fast re-transmit for half-closed connections, and handle the case
of socket flush (tcp_sock_consume()) flush failure in the same way as
tcp_data_from_tap() handles it.
Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Tested-by: Paul Holzinger <pholzing@redhat.com>
Reviewed-by: Jon Maloy <jmaloy@redhat.com>
Diffstat (limited to 'doc')
0 files changed, 0 insertions, 0 deletions
