#6288: popen deadlocks Paladin on multicore machines ----------------------------+----------------------------------------------- Reporter: darkwyrm | Owner: nobody Type: bug | Status: new Priority: normal | Milestone: R1 Component: System/POSIX | Version: R1/alpha2 Keywords: | Blocked By: Has a Patch: 0 | Platform: All Blocking: | ----------------------------+----------------------------------------------- This only occurs when multithreaded builds are enabled. Here are the steps to reproduce the error: 1) Load a project on an SMP machine. 2) Force a rebuild of the project 3) Run the build. On my quad core system, perhaps 1 file might get built. Typically not, though. It deadlocks. Killing Paladin from the Deskbar at this point causes a crash with the following backtrace: {{{ 0x00356031 in _ZL7do_execPKcPKPcS3_b () from /boot/system/lib/libroot.so (gdb) bt #0 0x00356031 in _ZL7do_execPKcPKPcS3_b () from /boot/system/lib/libroot.so #1 0x0035623f in execl () from /boot/system/lib/libroot.so #2 0x00318de2 in _IO_proc_open () from /boot/system/lib/libroot.so #3 0x00319000 in popen () from /boot/system/lib/libroot.so #4 0x0028a53c in SourceFileC::Compile (this=0x1802c468, info=@0x18069174, options=0x18189de8 "-O0 -I '/boot/home/projects/BeVexed' -I '/boot/home/projects/BeVexed/.' -I '/boot/develop/headers/be' -I '/boot/develop/headers/cpp' -I '/boot/develop/headers/posix' -I '/boot/home/config/include' ") at /boot/home/projects/Paladin-related/Paladin/SourceTypeC.cpp:309 #5 0x0024968d in Project::CompileFile (this=0x18069050, file=0x1802c468) at /boot/home/projects/Paladin-related/Paladin/Project.cpp:701 #6 0x002872e6 in ProjectBuilder::BuildThread (data=0x18062318) at /boot/home/projects/Paladin-related/Paladin/ProjectBuilder.cpp:343 #7 0x002ef4ec in thread_entry () from /boot/system/lib/libroot.so #8 0x70184fec in ?? () }}} -- Ticket URL: <http://dev.haiku-os.org/ticket/6288> Haiku <http://dev.haiku-os.org> Haiku - the operating system.