From: David Gibson <david@gibson.dropbear.id.au>
To: passt-dev@passt.top, Stefano Brivio <sbrivio@redhat.com>
Cc: David Gibson <david@gibson.dropbear.id.au>
Subject: [PATCH 0/8] splice() forwarding cleanups
Date: Thu, 28 May 2026 15:02:05 +1000 [thread overview]
Message-ID: <20260528050213.679685-1-david@gibson.dropbear.id.au> (raw)
As we discussed on an earlier call, while fixing bug 202 I noticed a
number of warts in the surrounding splice() forwarding code. Most are
just things that are longer or harder to follow than they need to be,
but in some cases there may be real (if unlikely to trigger) bugs.
Here's a collection of fixes.
David Gibson (8):
tcp_splice: Remove never-invoked SO_RCVLOWAT logic
tcp_splice: Simplify EPOLLRDHUP / eof / FIN handling
tcp_splice: Improve EOF exit condition for the loop
tcp_splice: Remove goto from forwarding loop
tcp_splice: Simplify shutdown(2) handling
tcp_splice: Simplify / correct OUT_WAIT flag handling
tcp_splice: Remove questionable "optimisation" of pending bytes
tracking
tcp_splice: Exit forwarding earlier when stalled read side
tcp_splice.c | 100 ++++++++++++++++-----------------------------------
1 file changed, 31 insertions(+), 69 deletions(-)
--
2.54.0
next reply other threads:[~2026-05-28 5:02 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-28 5:02 David Gibson [this message]
2026-05-28 5:02 ` [PATCH 1/8] tcp_splice: Remove never-invoked SO_RCVLOWAT logic David Gibson
2026-05-28 5:02 ` [PATCH 2/8] tcp_splice: Simplify EPOLLRDHUP / eof / FIN handling David Gibson
2026-05-28 5:02 ` [PATCH 3/8] tcp_splice: Improve EOF exit condition for the loop David Gibson
2026-05-28 5:02 ` [PATCH 4/8] tcp_splice: Remove goto from forwarding loop David Gibson
2026-05-28 5:02 ` [PATCH 5/8] tcp_splice: Simplify shutdown(2) handling David Gibson
2026-05-28 5:02 ` [PATCH 6/8] tcp_splice: Simplify / correct OUT_WAIT flag handling David Gibson
2026-05-28 5:02 ` [PATCH 7/8] tcp_splice: Remove questionable "optimisation" of pending bytes tracking David Gibson
2026-05-28 5:02 ` [PATCH 8/8] tcp_splice: Exit forwarding earlier when stalled read side David Gibson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260528050213.679685-1-david@gibson.dropbear.id.au \
--to=david@gibson.dropbear.id.au \
--cc=passt-dev@passt.top \
--cc=sbrivio@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://passt.top/passt
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for IMAP folder(s).