On Wed, 14 May 2008 13:06:01 +0100 Andy Green <[EMAIL PROTECTED]> babbled:
> -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > Somebody in the thread at some point said: > > | WNOHANG return immediately if no child has exited. > | > | so under no circumstances should this ever hang... but oooh. it does. now > | interestingly i attached to apm to see what it was doing.. and > lo-and-behold, > | it woke up and continued to execute then exited with sh reaping the > child then > | e reaping the sh and e waking up again: > > There's some process freezing step as part of entering suspend, I guess > it is to do with that. FWIW echo mem > /sys/power/state also the echo > never returns until it comes back in resume. sure - but the system never suspended - it stayed alive. that's why i could debug :) the problem is a sigchld has been issued for a process that hasn't fully exited and waitpid() is blocking even with WNOHANG. it should never block - ever. doesn't matter what the child is doing. :) never hang. ever! :) the problem is the freeze of the apm process propagates to all its parents - when i do know that ecore (the lib for e handling this) is carefully written to avoid such hangs. :) > Roh sent an amusing link once about the madness of suspending processes > in Linux maybe he can dig it out and post it here. > > - -Andy > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.9 (GNU/Linux) > Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org > > iEYEARECAAYFAkgq1akACgkQOjLpvpq7dMoyvgCePYeqi2EGeXAwWgeJpQ8TiEAw > k14An3438OCOZIsF1Npo9pGZRTzzwnFx > =txG5 > -----END PGP SIGNATURE----- -- Carsten Haitzler (The Rasterman) <[EMAIL PROTECTED]>
