tmux leaks memory in pane-border-status
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
tmux (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Bionic |
Fix Released
|
Undecided
|
Karl Stenerud |
Bug Description
[Impact]
A memory leak in tmux causes it to eventually fail when run for long periods of time. Since long term tmux sessions are common, this becomes a real problem for sysadmins, etc.
[Test Case]
# apt update
# apt dist-upgrade -y
# apt install -y tmux
# tmux -L none -f /dev/null new-session -s leaky-tmux-test 'tmux set-option -w -g pane-border-status top; tmux pipe-pane "cat>/tmp/
[exited]
# cat /tmp/leaky-
ITER: RSZ
1: 3712
1360: 3776
2725: 3904
4215: 4032
5743: 4160
6000: 4160 (example output)
RSZ will only change during the test if there's a memory leak. By comparison, we get correct behavior running without pane-border-status top:
$ tmux -L none -f /dev/null new-session -s leaky-tmux-test 'tmux pipe-pane "cat>/tmp/
[exited]
$ cat /tmp/leaky-
ITER: RSZ
1: 3492
6000: 3492
[Regression Potential]
Since this is only plugging a memory leak, no other behavior should be affected.
[Original Description]
The upstream bug is reported and fixed at https:/
Can we either patch the package (patch at https:/
Related branches
- Christian Ehrhardt (community): Approve
- Canonical Server: Pending requested
-
Diff: 54 lines (+34/-0)3 files modifieddebian/changelog (+7/-0)
debian/patches/series (+1/-0)
debian/patches/tmux-pane-border-status-leak.patch (+26/-0)
Changed in tmux (Ubuntu): | |
status: | New → Fix Released |
tags: | added: server-next |
Changed in tmux (Ubuntu Bionic): | |
assignee: | nobody → Karl Stenerud (kstenerud) |
Changed in tmux (Ubuntu Bionic): | |
status: | Confirmed → In Progress |
description: | updated |
tags: |
added: verification-done verification-done-bionic removed: verification-needed verification-needed-bionic |
Hi antgel,
I'm passing a few bugs with not enough attention atm.
Your report is great - I put it in a queue to hopefully be picked up soon.
Do you have a testcase other than waiting to see the issue? redraw_ make_pane_ status so maybe there is something that forces the redraw one could loop on?
It is in screen_
I tried
$ while /bin/true; do tmux refresh-client; done
but that did not expose the issue.