On Sat, 8 Nov 2003, [iso-8859-1] Sylvain Petreolle wrote:
The execution of the attached script in dlls/ shows the only dll test which generates orphaned zombies is kernel.
Actually shows the cumulative total. I took the liberty of hacking it a bit. See http://www.astro.gla.ac.uk/users/paulm/Scripts/zombtest
[...]
Paul, Sami, (and perhaps others), could you run this script and send me the results ?
OK, here's the result of some investigations:
o On lilith (RH-7.3, gcc-2.96, glibc-2.2.5-43, 2.4.20 kernel) *no* zombies are generated for the conformance tests.
o On quisquiliae (RH-7.3, gcc-3.2.1, glibc-2.2.5-43, 2.6.0-test8 kernel) a single zombie is created, which happens when the kernel DLL tests are run.
o Copying the whole lilith-compiled wine tree across to quisquiliae and re-running zombtest, I get a zombie.
Looks suspiciously like the 2.6.0-test8 kernel is to blame. To confirm this, I rebooted quisquiliae using a 2.4.20-kernel. Guess what? No zombies.
Paul, could you say more about this one?
I get about six zombies per regression test. I tracked one of these zombies down to the kernel/test/process.c test_DebuggingFlag()'s ContinueDebugEvent() call, which disappears into wineserver.
Not that much more. Originally, when running the full gamut of conformance tests on my laptop (which is running 2.6.0-test9), six zombies orphan processes were created.
One of these zombies was created when running the kernel DLL tests (the one that is created when running 2.6.0-test8). I tracked the problem down to tests/process.c line 967: ContinueDebugEvent(de.dwProcessId, de.dwThreadId, DBG_CONTINUE);
From memory, it was the second (but not the final) time around the loop
that the zombie appeared.
I tried to trace this into the wine itself, but unfortunately ran out of free time :(
---- Paul Millar