From: newsham AT lava DOT net (Tim Newsham) Subject: do_exit and signals? 11 Jun 1998 09:41:59 -0700 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit To: cygwin32-developers AT cygnus DOT com Hi, Got a question. The do_exit() function (in dcrt0.cc) closes all the open files and then does sigproc_terminate to stop signal processing. Is there any reason the files should be closed first? During some high-load processing with lots of processes we occasionally see hung processes and once in a while a Dr Watson. I attached to one of the hung process at one point and got a stack trace and noticed: call handler .... (2 0x77f6xxxx addresses) ... _close close_all_files do_exit _exit This process was unkillable in cygwin. I'm not sure what was going on here. Would it help to disable signals earlier in the _exit sequence? We've also seen two other anomolies recently that we haven't seen more than once: - commit_and_ic: Virtual Alloc Failed (is this a standard "out of memory" type of error?) - call_handler: ouldn't[sic] get context of main thread. err 6 (this was printed every time we tried to kill the process) I didn't get to debug these processes. Compliments: B19 is MUCH MUCH more stable for us than previous vesions have been. Other than few and infrequent errors under high load, everythings working very well. Tim N.