public inbox for passt-dev@passt.top
 help / color / mirror / code / Atom feed
* [PATCH 0/8] splice() forwarding cleanups
@ 2026-05-28  5:02 David Gibson
  2026-05-28  5:02 ` [PATCH 1/8] tcp_splice: Remove never-invoked SO_RCVLOWAT logic David Gibson
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: David Gibson @ 2026-05-28  5:02 UTC (permalink / raw)
  To: passt-dev, Stefano Brivio; +Cc: David Gibson

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


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2026-05-28  5:02 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-05-28  5:02 [PATCH 0/8] splice() forwarding cleanups David Gibson
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

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).