Issue with a7a9460d27... commit

18 views
Skip to first unread message

Vladimir Lomov

unread,
Apr 18, 2020, 2:37:49 AM4/18/20
to tmux mailing list
Hello,

I see high CPU and network load from terminals (kitty, alacritty) when use
tmux compiled from GIT with commit a7a9460d2790161f7bb60c4047acf32d3aa93ed9
"Set mode properly before and after redrawing, and don't bother calculating
cursor position if it won't be used.".

High CPU load I see when run tmux locally in a terminal and both CPU and
network load if I ssh to a host and attach tmux session in terminal.

The tmux compiled without this commit works fine.

---
WBR, Vladimir Lomov

--
Ever wonder if taxation without representation might have been cheaper?
signature.asc

Nicholas Marriott

unread,
Apr 18, 2020, 2:38:55 AM4/18/20
to Vladimir Lomov, tmux mailing list
Looks OK to me, what are you doing in tmux when the CPU is high?
> --
> You received this message because you are subscribed to the Google Groups "tmux-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to tmux-users+...@googlegroups.com.
> To view this discussion on the web, visit https://groups.google.com/d/msgid/tmux-users/20200418062400.GA835%40smoon.bkoty.ru.

Nicholas Marriott

unread,
Apr 18, 2020, 2:41:44 AM4/18/20
to Vladimir Lomov, tmux mailing list
Never mind, I think I see it, looking...

Nicholas Marriott

unread,
Apr 18, 2020, 2:53:17 AM4/18/20
to Vladimir Lomov, tmux mailing list
This should be fixed by this change. Thanks!

Index: server-client.c
===================================================================
RCS file: /cvs/src/usr.bin/tmux/server-client.c,v
retrieving revision 1.323
diff -u -p -r1.323 server-client.c
--- server-client.c 18 Apr 2020 06:20:50 -0000 1.323
+++ server-client.c 18 Apr 2020 06:51:21 -0000
@@ -1732,7 +1732,6 @@ server_client_check_redraw(struct client

flags = tty->flags & (TTY_BLOCK|TTY_FREEZE|TTY_NOCURSOR);
tty->flags = (tty->flags & ~(TTY_BLOCK|TTY_FREEZE)) | TTY_NOCURSOR;
- tty_update_mode(tty, mode, NULL);

if (~c->flags & CLIENT_REDRAWWINDOW) {
/*
@@ -1742,13 +1741,14 @@ server_client_check_redraw(struct client
TAILQ_FOREACH(wp, &c->session->curw->window->panes, entry) {
if (wp->flags & PANE_REDRAW) {
log_debug("%s: redrawing pane %%%u", __func__, wp->id);
- tty_update_mode(tty, tty->mode, NULL);
+ tty_update_mode(tty, mode, NULL);
screen_redraw_pane(c, wp);
}
}
}

if (c->flags & CLIENT_ALLREDRAWFLAGS) {
+ tty_update_mode(tty, mode, NULL);
if (options_get_number(s->options, "set-titles"))
server_client_set_title(c);
screen_redraw_screen(c);

Vladimir Lomov

unread,
Apr 18, 2020, 5:14:13 AM4/18/20
to Nicholas Marriott, tmux mailing list
Hi,
** Nicholas Marriott <nicholas...@gmail.com> [2020-04-18 07:53:14 +0100]:
Build from git (commit e1799ed7c8f55a2f4467f45549bee3a058cdcd24, includes
baf1fca27348a2950b7d1bb26cdf4d34a752b962), all work fine as usual, thank you.

[...]

---
WBR, Vladimir Lomov

--
Lost: gray and white female cat. Answers to electric can opener.
signature.asc
Reply all
Reply to author
Forward
0 new messages