Skip to content

Release 1.14.1: stop tmux lag (status forks, history cap) - #64

Merged
YASoftwareDev merged 3 commits into
masterfrom
fix/tmux-status-no-fork-jobs
Oct 7, 2026
Merged

YASoftwareDev merged 3 commits into
masterfrom
fix/tmux-status-no-fork-jobs

Conversation

@YASoftwareDev

@YASoftwareDev YASoftwareDev commented Oct 7, 2026 •

Copy link
Copy Markdown
Owner

What: status-right uses native #{user}@#{host_short} instead of three forked shell jobs; history-limit 10M -> 20000. Release 1.14.1.

Why: on dev-01 the tmux server reached 1.3 GB (352k scrollback lines) and forked ~3x/s for status jobs; perf showed copy_present_pte/zap_pte_range on top, server at 60% CPU, every pane lagging.

Verified on dev-01: server CPU 60% -> 7%, runqueue wait 107 -> 16 ms/s (schedstat, 10 s windows); forks from the server 59 -> 6 per 20 s (execsnoop). After clear-history + malloc_trim, RSS 1376 -> 77 MiB.

oh-my-tmux expands #{username}/#{root}/#{hostname} into #() shell jobs that
fork the tmux server ~3x/s. With a 1.3 GB server each fork copies its page
tables; measured 60% server CPU -> 7% using native #{user}@#{host_short}.
At 10M lines the server reached 1.3 GB, and every fork copies its page
tables. Release 1.14.1.
@YASoftwareDev YASoftwareDev changed the title fix: drop forking user/host status jobs from tmux status-right Release 1.14.1: stop tmux lag (status forks, history cap) Oct 7, 2026
@YASoftwareDev
YASoftwareDev merged commit a86013e into master Oct 7, 2026
30 checks passed
@YASoftwareDev
YASoftwareDev deleted the fix/tmux-status-no-fork-jobs branch October 7, 2026 11:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants