I've tried again with the change from Alex (without additional SRCREV bump) on ubuntu-14.04 To make it simple I've triggered the build of just to recipes (which caused "tried to close client 0 (highest is 1)" before: $ bitbake tzdata update-rc.d and again I quickly got: 23G tzdata/2018c-r0/pseudo/ 24G update-rc.d/0.7-r5/pseudo/ There is nothing special in the pseudo.log before this "tried to close client 0 (highest is 1)" ==> tzdata/2018c-r0/pseudo/pseudo.log <== debug_logfile: fd 2 pid 8489 [parent 8484], doing new pid setup and server start Setup complete, sending SIGUSR1 to pid 8484. tried to close client 0 (highest is 1) tried to close client 0 (highest is 1) ==> update-rc.d/0.7-r5/pseudo/pseudo.log <== debug_logfile: fd 2 pid 8488 [parent 8481], doing new pid setup and server start Setup complete, sending SIGUSR1 to pid 8481. tried to close client 0 (highest is 1) tried to close client 0 (highest is 1) And there is actually nothing else after those 3 lines at the beginning until I've killed the bitbake build (which didn't kill pseudo itself) and then killed both pseudo processes - which resulted with left-over bitbake-worker starting 2 new pseudo processes which kept spamming "tried to close client 0 (highest is 1)" after initial setup: $grep -v "^tried to close client 0 (highest is 1)$" */*/pseudo/pseudo.log tzdata/2018c-r0/pseudo/pseudo.log:debug_logfile: fd 2 tzdata/2018c-r0/pseudo/pseudo.log:pid 8489 [parent 8484], doing new pid setup and server start tzdata/2018c-r0/pseudo/pseudo.log:Setup complete, sending SIGUSR1 to pid 8484. tzdata/2018c-r0/pseudo/pseudo.log:Received signal 15, quitting. tzdata/2018c-r0/pseudo/pseudo.log:db cleanup for server shutdown, 19:10:01.424 tzdata/2018c-r0/pseudo/pseudo.log:memory-to-file backup complete, 19:10:01.436. tzdata/2018c-r0/pseudo/pseudo.log:db cleanup finished, 19:10:01.436 tzdata/2018c-r0/pseudo/pseudo.log:debug_logfile: fd 2 tzdata/2018c-r0/pseudo/pseudo.log:pid 11205 [parent 11199], doing new pid setup and server start tzdata/2018c-r0/pseudo/pseudo.log:Setup complete, sending SIGUSR1 to pid 11199. update-rc.d/0.7-r5/pseudo/pseudo.log:debug_logfile: fd 2 update-rc.d/0.7-r5/pseudo/pseudo.log:pid 8488 [parent 8481], doing new pid setup and server start update-rc.d/0.7-r5/pseudo/pseudo.log:Setup complete, sending SIGUSR1 to pid 8481. update-rc.d/0.7-r5/pseudo/pseudo.log:Received signal 15, quitting. update-rc.d/0.7-r5/pseudo/pseudo.log:db cleanup for server shutdown, 19:10:01.423 update-rc.d/0.7-r5/pseudo/pseudo.log:memory-to-file backup complete, 19:10:01.436. update-rc.d/0.7-r5/pseudo/pseudo.log:db cleanup finished, 19:10:01.436 update-rc.d/0.7-r5/pseudo/pseudo.log:debug_logfile: fd 2 update-rc.d/0.7-r5/pseudo/pseudo.log:pid 11212 [parent 11200], doing new pid setup and server start update-rc.d/0.7-r5/pseudo/pseudo.log:Setup complete, sending SIGUSR1 to pid 11200. $ du -hs */*/pseudo/ 28G tzdata/2018c-r0/pseudo/ 28G update-rc.d/0.7-r5/pseudo/ Without --enable-epoll in pseudo.inc tzdata built fine and pseudo.log is very short: debug_logfile: fd 2 pid 14630 [parent 14629], doing new pid setup and server start 14630: new pid: 14630 [pseudo] 14630: Setup complete, sending SIGUSR1 to pid 14629. 14630: path mismatch [2 links]: ino 282238092 db '/run/shm/sem.mp-yluz7s8j' req '/run/shm/sem.5mP74h'. 14630: db cleanup for server shutdown, 20:19:27.475 14630: memory-to-file backup complete, 20:19:27.475. 14630: db cleanup finished, 20:19:27.475 Shouldn't PSEUDO_DEBUG=4 in the environment generate a bit more verbose log? I've also tried to add it in FAKEROOTENV (because pseudo seems to lock up before run.do_install is executed, so the export there probably didn't happen soon enough, but then even when it worked without --enable-epoll the log wasn't any bigger). meta/conf/bitbake.conf:export PSEUDO_DEBUG = "4" meta/conf/bitbake.conf:FAKEROOTBASEENV = "PSEUDO_BINDIR=${PSEUDO_SYSROOT}${bindir_native} PSEUDO_LIBDIR=${PSEUDO_SYSROOT}${prefix_native}/lib/pseudo/lib PSEUDO_PREFIX=${PSEUDO_SYSROOT}${prefix_native} PSEUDO_DISABLED=1 PSEUDO_DEBUG=4" meta/conf/bitbake.conf:FAKEROOTENV = "PSEUDO_PREFIX=${PSEUDO_SYSROOT}${prefix_native} PSEUDO_LOCALSTATEDIR=${PSEUDO_LOCALSTATEDIR} PSEUDO_PASSWD=${PSEUDO_PASSWD} PSEUDO_NOSYMLINKEXP=1 PSEUDO_DEBUG=4 PSEUDO_DISABLED=0" Regards, On Sun, Feb 18, 2018 at 12:43 PM, Martin Jansa wrote: > The do_install tasks failing with exit code '134'/SIGABRT were caused by > left over pseudo processes from previous builds still holding the > pseudo.lock. > > Manually killing those (still spinning at around 90% CPU for last 2 days) > resolved the do_install failures. > > It also explains the lack of log.do_install files, because do_install > failed before it even properly started. > > Regards, > > On Sat, Feb 17, 2018 at 9:17 PM, Seebs wrote: > >> On Sat, 17 Feb 2018 15:28:55 +0200 >> Alexander Kanavin wrote: >> >> > For me, with epoll enabled: >> > >> > b6a015a works >> > 23f089f and 26e30fa both lock up >> >> Huh. It's possible that the initial "don't try to close fd 0" was >> correct, and the real problem is that the attempt is getting made >> mistakenly. I'll study that more; the epoll code was a contribution and >> I may not have fully understood it. >> >> -s >> > >