From 60121a039941ba79a7076a58fd6a0f75af695a76 Mon Sep 17 00:00:00 2001 From: Tim Culverhouse Date: Wed, 8 Jul 2026 15:37:39 -0500 Subject: [PATCH] Revert "termio: bound POSIX read-ahead on non-Darwin" This reverts commit bed47168ca7f34fe0a27e9f13c46b8df97cb77ca. --- src/termio/Exec.zig | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/src/termio/Exec.zig b/src/termio/Exec.zig index 102ed4efa..39abefd8f 100644 --- a/src/termio/Exec.zig +++ b/src/termio/Exec.zig @@ -1281,21 +1281,15 @@ pub const ReadThread = struct { /// stages. The gather stage can run at most this many batches /// ahead of the parse stage before it blocks, which (via the /// kernel pty queue) is also what preserves flow control to the - /// child. - /// - /// The Darwin value was empirically chosen through measurements on - /// an M4 Max. Less than 4 there are minor slowdowns, above 4 there - /// are no improvements. - /// - /// Other POSIX platforms keep fewer batches in flight so terminal - /// parsing applies backpressure to bulk writers before frame-style - /// output can queue stale frames. - const buffer_count = if (builtin.os.tag.isDarwin()) 4 else 2; + /// child. Empirically chosen through measurements on an M4 Max. + /// Less than 4 there are minor slowdowns, above 4 there are no + /// improvements. + const buffer_count = 4; /// The capacity of each gather buffer. One batch is also the unit /// of work the parse stage does per terminal lock acquisition, so /// this bounds both gather latency and lock hold time. - const buffer_capacity = if (builtin.os.tag.isDarwin()) 64 * 1024 else 8 * 1024; + const buffer_capacity = 64 * 1024; /// How many gathered bytes mark a stream as saturated. The macOS /// kernel tty output queue hands the master at most about 1 KiB