I recently upgraded to Debian 10. I normally have a few dozen instances of vim running in different tmux windows. Now, when trying to do this in Debian 10, when restoring my session in tmux, I see about a dozen instances of vim all with very high cpu usage. My system slows to a crawl and my load average spikes. Doesn't happen to all instances of vim, only about a dozen or so.

I use a tmux shortcut to identify which window holds a chosen offender. I then exit that vim process with :q, and somehow top shows that vim process still running!! Luckily kill <pid> actually kills it for real.

So two major bugs here. 1. vim using huge amounts of cpu, only when restoring sessions in tmux. 2. vim still showing as running after exiting with :q.

Every time I restart my system it takes me an hour or more to wrangle all these rogue vim processes, and until I do, my system is nearly unusable. Typing at the terminal is slowed to a crawl.

One additional clue: if I try killing the pid of "vim" while looking directly at a window showing that vim process running, top shows the process was killed, but vim is still running! So is tmux somehow invoking some sort of unknown process and just calling it vim?

My shortcut to locate the pane running a pid is:

bind-key W command-prompt -p "Switch to pane with pid:" "run-shell 'pane=\$(ps eww %% | sed \"1d; s/^.*TMUX_PANE=//;s/ .*//\"); [[ -z \$pane ]] && tmux display-message \"could not find pid\" || tmux switch-client -t \$pane'"

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.