public inbox for passt-dev@passt.top
 help / color / mirror / code / Atom feed
* [PATCH v2 0/3] Fixes and a workaround for TCP stalls with small buffers
@ 2023-09-29 15:04 Stefano Brivio
  2023-09-29 15:04 ` [PATCH v2 1/3] tcp: Fix comment to tcp_sock_consume() Stefano Brivio
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Stefano Brivio @ 2023-09-29 15:04 UTC (permalink / raw)
  To: passt-dev; +Cc: David Gibson, Matej Hrica

The fundamental patch here is 2/3, which is a workaround for a rather
surprising kernel behaviour we seem to be hitting. This all comes from
the investigation around https://bugs.passt.top/show_bug.cgi?id=74.

I can't hit stalls anymore and throughput looks finally good to me
(~3.5gbps with 208 KiB rmem_max and wmem_max), but... please test
(again).

v2:
- Drop 1/5 (checking for ACK before resetting STALLED and calling
  tcp_data_from_sock() directly from tcp_tap_handler())
- Moving reset of STALLED flag is now done in 2/3 (was 3/5)
- Don't pass unnecessary argument to tcp_data_to_tap() in 3/3 (was
  4/5)
- Drop 5/5 as long as we're not sure what kind of buffer clamping
  is actually beneficial

Stefano Brivio (3):
  tcp: Fix comment to tcp_sock_consume()
  tcp: Force TCP_WINDOW_CLAMP before resetting STALLED flag
  tcp, tap: Don't increase tap-side sequence counter for dropped frames

 tap.c | 10 ++++++---
 tap.h |  2 +-
 tcp.c | 71 +++++++++++++++++++++++++++++++++++++++++++++++++----------
 3 files changed, 67 insertions(+), 16 deletions(-)

-- 
2.39.2


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

end of thread, other threads:[~2023-10-03  2:50 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-09-29 15:04 [PATCH v2 0/3] Fixes and a workaround for TCP stalls with small buffers Stefano Brivio
2023-09-29 15:04 ` [PATCH v2 1/3] tcp: Fix comment to tcp_sock_consume() Stefano Brivio
2023-09-29 15:04 ` [PATCH v2 2/3] tcp: Force TCP_WINDOW_CLAMP before resetting STALLED flag Stefano Brivio
2023-09-29 15:44   ` Stefano Brivio
2023-10-03  2:47   ` David Gibson
2023-09-29 15:04 ` [PATCH v2 3/3] tcp, tap: Don't increase tap-side sequence counter for dropped frames Stefano Brivio
2023-10-03  2:50   ` 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).