And topas shows kernel consume very high CPU such that most of the time requires a hard reset to return the system to normal state. We are running AIX 5.2 ML4.
Does anyone knows how a running process became "<exiting>" after it receives a SIGTERM or SIGKILL signal to terminate ?
I am not sure what the solution is to your current problem, but I would highly recommend that both of you get to at least 5.2 ML5. ML4 is notoriously bad and there have been gobs of code fixes since ML2. Just a suggestion (it may actually prevent this issue in the future).
I have found some info related to the <exiting> process from the comp.unix.aix. It doesn't really solve my problem but I am now troubleshooting our application from the db2 connection perspective.
Copied below the aome aix forum discussions pertaining to <exiting> process ...
++++
The man pages for 'ps' provide the following info on <defunct> and
<exiting> processes:
"A process that has exited and has a parent that has not yet wait-
ed for the process is marked <defunct>. A process that is
blocked trying to exit is marked <exiting>."
++++
A process gets stuck in the exiting state if it tries to release a
resource that can't be freed at that time. 2 good examples would
be to turn off a terminal while there is still data in the buffer
for that port. Socket connections are the second most likely culprits.
You can get a program to clear the TTY port if that is the issue. If
it is a socket problem, you need to attack it within the program
you are running.
++++
Bruno Jacobs wrote:
> Could anybody tell me how to kill a process which is in <exiting>
> status ?
> Kill -9 doesn't work on it.
> Regards,
> Bruno.
The fact that it is exiting means that killing it is redundant. The
problem is that when a process exits, it releases all of its resources. If one of those
resources is locked up, frozen, etc., then you must free that resource first. This
is usually either a hung tty port (which may be it's controlling tty) or a hung
socket. There are programs to clear a tty port based on what kind of underlying port
it is on (ie, local port, 64 port adapter, 128 port adapter, etc.). I am not sure
of any utilities to clear a hung socket.
Anyway, this freeing of resources occurs in kernel mode, and is not
interruptable. In simplests terms, it MUST free all of the resources it has before
completely exited, otherwise all kinds of nast side effects can occur such as
memory leaks, filesystems where you can't free up space or unmount them, etc.
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.