[PLUG] How to kill firefox.bin

Tony Rick tonyr42 at gmail.com
Tue Oct 9 16:49:04 UTC 2007


So let's review.
1. John has a a firefox-bin zombie whose existence, apparently, will not let
him start up a new
    instance of firefox.
2. Zombies can't be 'killed' because they are already dead.
3. There is no user path to removing zombies, short of rebooting.
4. Zombies exist because a parent process didn't 'reap' a child process's
exit status;
    the child process becomes the zombie.
5. All processes are decendents of the 'init' process (PID 1).
6. If there is no parent to 'reap' a child's exit status, the child/zombie
is inherited
    by the 'init' process.
7. Supposedly 'init' periodically 'reaps' exit status from all it's
children, allowing
    zombie processes to be deleted from the process table.
8. None of this helps John solve the original problem.

So where in this sequence does John's example go wrong?  There's bug
material here,
but I can't seem to find any reference to such at Malone.  On my x86 (not
64bit) laptop,
firefox-bin is already a direct child of 'init' (PID 1).  (I use the CLI
command 'ps axwwl',
parent process ID is the fourth column).

There is another,slightly longer, explanation of the zombie thing at
http://wiki.answers.com/Q/What_is_Zombie_Process_and_Orphan_Process

There are a couple of things to try not mentioned yet. 'sudo kill -SIGCHLD
1' should send a signal to the 'init' process which it may (or may not)
handle as a request to reap dead children.  'sudo kill -HUP 1' should send a
signal to the 'init' process to re-read it's tty
config file (and maybe other stuff).  Since the whole 'init' thing is now
some kind of
adjunct to 'upstart', I'm not really sure how/whether any of this signal
behavior still
obtains. Caveat Emptor, YMMV, etc etc etc...

- tony



More information about the PLUG mailing list