Version: (using KDE Devel) Installed from: Compiled sources Compiler: i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc. build 5363) OS: Other I'm still trying to do more investigation, but HEAD seems to exhibit deadlocks in the KProcessController destructor. Here is the output of a tool called "Spin Control" which samples apps locked in the "spinning beachball of death": ---(snip!)--- Call graph: 6000 Thread_4a03 6000 start 6000 _start 6000 main 6000 KApplication::~KApplication [in-charge]() 6000 KProcessController::deref() 6000 KProcessController::~KProcessController [in-charge deleting]() 6000 close 6000 close 6000 Thread_4b03 6000 _pthread_body 6000 QThreadPrivate::start(void*) 6000 QProcessManager::run() 6000 select 6000 select 6000 Thread_4c03 6000 _pthread_body 6000 __CFSocketManager 6000 select 6000 select Total number in stack (recursive counted multiple, when >=5): Sort by top of stack, same collapsed (when >= 5): select 12000 close 6000 ---(snip!)--- it looks like there are 3 threads, one is trying to close one of the FDs created in the pipe(), and the other two are selecting on them. For some reason they never finish though.
I checked in a "workaround" for this, which is to say, I #ifdef'd it out on darwin :) However, it feels wrong to do so, any ideas how I can go about fixing this properly?
not sure this is valid anymore; once I do some new profiling there will be opportunities to reopen such bugs. :)