Defunct process with dtlogin

Hi,

I tried to kill the defunct process but it didn't work.
I don't want to make a mistake because some people are working on the server. I don't know if they might have troubles without dtlogin.

I would like stop/start dtlogin to stop the defunct process

Do you think that works?
Otherwise do you have a better solution to give me?

Do you know the difference between

Thanks

The <defunct> is a child process stub trying to deliver the exit code and status to the parent wait() that has not been called to process SIGCHILD or whatever. It points to some programming error in the parent, that it ignores it's dead children. Wow, wiki: Zombie process - Wikipedia, the free encyclopedia However, Can't kill 'defunct' process - Toolbox for IT Groups says that dtlogin may have inherited the zombies from a crashed parent, so it may be another victim. Perhaps periodic reboots are a good idea?

Also, being a many time burnt veteran, I scan my systems for core files, which users, even developers, may not realize are left behind, indicating some vulnerability in the code. Less core generation is a really nice thing. I used file to find 14 bytes of the executable name, and gdb to do a stack trace, then compressed the core in /tmp (which we periodically clean of old files) and mailed all the info to the group. Removing it allows new core files from different users in the same place, without losing any interesting old core files. Sometimes it takes a while to find the bug, or learn to avoid it!

1 Like

thanks for your answer.
I checked the link you give me, I don't have so many solutions.

thanks again

Maybe you can write a script that does a ps -fex every minute or so, and if a new defunct shows up, look it up on the prior ps to see what it was. This way, you may get a handle on what is becoming zombie, and who was the original parent.

I'm coming back with my problem. :wall:

stopsrc and startsrc, stop the defunct process but after a while (one minute) some other defunct process are coming back.
Do you have any ideas why they come back?

A "<defunct>" process is no immediate problem: it doesn't allocate any resources (save for a few bytes in the process table) and your machine machine will most probably die because of exhaustion long before the available process numbers are used up. So you are not in a hurry to clean up these zombies even though they are a nuisance.

Could you please tell us the exact version of your AIX and specifiy the system you are running?

I hope this helps.

bakunin

AIX 5.2.0.0