Hi Amadeusz, sorry for the late reply. Didn't find the time to try the new patch on that affected production VM earlier.
On Wed, Nov 06, 2019 at 09:11:08PM +0100, Amadeusz Sławiński wrote: > > I am wondering why the zombies show up at all. Me too. > > They were reaped correctly on my test process (code below). I > > guess there is some race with SIGCHLD handler. From https://savannah.gnu.org/bugs/?25089 it seems obvious to me that this case only shows up under very specific circumstances. So far it only has been reported on either a Pentium II with 233 MHz in 2008 (which was already quite slow and old back then) and on an VMware ESX VM (which might be considered inperformant, too, from some point of view). I also fail to reproduce this on any other machine than this VMware ESX VM. But on that machine, I can easily reproduce it by spawning dozens of windows and then starting to close them again. On Wed, Nov 06, 2019 at 09:32:20PM +0100, Amadeusz Sławiński wrote: > > Right that makes sense, looking at how SIGCHLD is handled, seems like > > we only tell it to wait for one child, so if it is slow system, a lot > > of childs can stop, but it may only wait for one of them: > > > > https://git.savannah.gnu.org/cgit/screen.git/tree/src/screen.c?h=screen-v4#n1593 > > > > seems, like this line should have += instead of = > > and also this one > https://git.savannah.gnu.org/cgit/screen.git/tree/src/screen.c?h=screen-v4#n1571 > should be -= 1; > > > > > Axel, can you try changing above line instead? Done that now and it unfortunately doesn't solve the issue. :-( I've put 0001-Fix-screen-leaving-zombie-processes.patch from https://savannah.gnu.org/support/download.php?file_id=47810 (via https://savannah.gnu.org/bugs/?25089#comment7) directly into debian/patches/, replaced the former patch with its name in debian/patches/series, removed the "src/" from the path in the patch to be equivalent to the paths in the official tar balls, and then build the 4.6.2-3 debian package. I quickly get one zombie per closed window: $ ps auxwwww | egrep "defunct|Z" | fgrep -v grep USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND beckert 13656 0.0 0.0 0 0 ? Zs 14:44 0:00 [zsh] <defunct> beckert 13658 0.0 0.0 0 0 ? Zs 14:44 0:00 [zsh] <defunct> beckert 13660 0.0 0.0 0 0 ? Zs 14:44 0:00 [zsh] <defunct> beckert 13662 0.0 0.0 0 0 ? Zs 14:44 0:00 [zsh] <defunct> beckert 13664 0.0 0.0 0 0 ? Zs 14:44 0:00 [zsh] <defunct> beckert 13666 0.0 0.0 0 0 ? Zs 14:44 0:00 [zsh] <defunct> beckert 13669 0.0 0.0 0 0 ? Zs 14:44 0:00 [zsh] <defunct> beckert 13675 0.0 0.0 0 0 ? Zs 14:44 0:00 [zsh] <defunct> beckert 13677 0.0 0.0 0 0 ? Zs 14:44 0:00 [zsh] <defunct> beckert 13679 0.0 0.0 0 0 ? Zs 14:44 0:00 [zsh] <defunct> beckert 13681 0.0 0.0 0 0 ? Zs 14:44 0:00 [zsh] <defunct> Kind regards, Axel -- PGP: 2FF9CD59612616B5 /~\ Plain Text Ribbon Campaign, http://arc.pasp.de/ Mail: a...@deuxchevaux.org \ / Say No to HTML in E-Mail and Usenet Mail+Jabber: a...@noone.org X https://axel.beckert.ch/ / \ I love long mails: https://email.is-not-s.ms/
signature.asc
Description: PGP signature