Okay, so with complete lack of any other ideas, I tried to figure out what was wrong with my app (Proxomitron), which is leaving unkillable processes around. So I went into ExitThread, and added something like: DPRINTF("%08lx:Exiting thread...(%d)\n", GetCurrentThreadId(),getpid()); exit(code); right at the top of the function. And, lo and behold, the processId matches the processes that 'ps' can't kill. So the 'exit' isn't actually terminating the process. How is that possible? This was all done against today's CVS. I don't know which messages in the trace might indicate what is going wrong. Does anyone have any ideas? Thanks, .Geoff ----------------------------------------------------- Protect yourself from spam, use http://sneakemail.com
On 21 Mar 2002, Geoffrey Hausheer wrote:> Okay, so with complete lack of any other ideas, I tried to > figure out what was wrong with my app (Proxomitron), which > is leaving unkillable processes around. > > So I went into ExitThread, and added something like: > DPRINTF("%08lx:Exiting thread...(%d)\n", GetCurrentThreadId(),getpid()); > exit(code); > > right at the top of the function. > And, lo and behold, the processId matches the processes > that 'ps' can't kill. So the 'exit' isn't actually > terminating the process. How is that possible? > > This was all done against today's CVS. > > I don't know which messages in the trace might indicate > what is going wrong. Does anyone have any ideas?Hmm. Does the wineserver ever ptrace-attach to the thread? (maybe try --debugmsg +server) Have you tried to kill the processes with -CONT to see if that helps them go away after you've tried the other termination signals?
How are you exiting The Proxomitron? Among other things, it sticks itself in the Windows system tray. You actually exit the program by rightclicking that icon and selecting exit, or you double click The Proxomitron's sys tray icon, then select Exit from the File menu. Any other way of exiting the app isn't actually closing it. Also, what happens if you first disable The Proxomitron, then exit it? David a Proxomitron user under W9x gnome@hawaii.rr.com On 21 Mar 2002, at 22:22, Geoffrey Hausheer wrote:> Okay, so with complete lack of any other ideas, I tried to > figure out what was wrong with my app (Proxomitron), which > is leaving unkillable processes around. > > So I went into ExitThread, and added something like: > DPRINTF("%08lx:Exiting thread...(%d)\n", GetCurrentThreadId(),getpid()); > exit(code); > > right at the top of the function. > And, lo and behold, the processId matches the processes > that 'ps' can't kill. So the 'exit' isn't actually > terminating the process. How is that possible? > > This was all done against today's CVS. > > I don't know which messages in the trace might indicate > what is going wrong. Does anyone have any ideas? > > Thanks, > .Geoff > > ----------------------------------------------------- > Protect yourself from spam, use http://sneakemail.com > _______________________________________________ > wine-users mailing list > wine-users@winehq.com > http://www.winehq.com/mailman/listinfo/wine-users
> -----Original Message----- > From: David Jones gnome@hawaii.rr.com> > How are you exiting The Proxomitron? Among other > things, it sticks itself in the Windows system tray. You > actually exit the program by rightclicking that icon and > selecting exit, or you double click The Proxomitron's > sys tray icon, then select Exit from the File menu. Any > other way of exiting the app isn't actually closing it.Yes I have quit Proxomitron through the systray> Also, what happens if you first disable The > Proxomitron, then exit it?This doesn't work either. The problem is that each time proxomitron retrieves a new webpage, it creates a thread to do it. However, even though that thread ends (with an ExitThread), it refuses to die. .Geoff ----------------------------------------------------- Protect yourself from spam, use http://sneakemail.com
> -----Original Message----- > From: Ove Kaaven <ovehk@ping.uio.no> > Hmm. Does the wineserver ever ptrace-attach to the thread? > (maybe try --debugmsg +server)I think so: 0868d630: new_thread() = 0 { tid=0x86a56f8, handle=84 } 086a56f8: *fd* 19 <- 23 086a56f8: *fd* 21 <- 24 086a56f8: init_thread( unix_pid=29275, teb=0x41457000, entry=0x421d00, reply_fd=19, wait_fd=21 ) 086a56f8: *attached* 086a56f8: *signal* signal=19 ... 086a56f8:Exiting thread...(29275) 086a56f8: *exited* status=0 (that last message is my debug message, pid 29275, which is unkillable.) One thing I noticed in the +relay trace was: 08846660:Call kernel32.GetLastError() ret=00424b08 08846660:Ret kernel32.GetLastError() retval=00000005 ret=00424b08 (in this case 8846660 is the unkillable thread) But I don't see anything that sets the error. In case you are wondering, Error 5 is: ERROR_ACCESS_DENIED There doesn't appear to be anything else interesting (to me) in the relay trace though.> Have you tried to kill the processes with -CONT to see if that helps them > go away after you've tried the other termination signals?This didn't work. Any other avenues I can explore? Thanks, .Geoff ----------------------------------------------------- Protect yourself from spam, use http://sneakemail.com