[07:51] <Jordan_U> There is a user in #ubuntu who appears to have a defunct process whose parent is init, am I correct in thinking that shouldn't be possible? Am I correct in having them submit a bug report against upstart?
[07:52] <Jordan_U> Output of "ps aux" showing that the process is defunct: http://paste.ubuntu.com/1349958/ output of "pstree" showing that it's owned by init, http://paste.ubuntu.com/1349935/ .
[07:58] <chris|> Jordan_U, no, it is entirely possible to have a defunct process under init
[08:00] <chris|> Jordan_U, I imagine you assume that all processes under init are controlled by upstart, but that is not the case
[08:00] <Jordan_U> I did assume that, apparently incorrectly :)
[08:01] <Jordan_U> Is PID 1 not upstart?
[08:03] <chris|> Jordan_U, imagine, for example, you run a process from the shell that daemonizes into the background, thus detaching from the shell process. Because the parent process is gone, init will then "adopt" the process.
[08:04] <chris|> Jordan_U, that does not mean however that the same rules apply for those processes that would apply for processes run by upstart
[08:05] <Jordan_U> chris|: Is PID 1 not upstart?
[08:06] <chris|> Jordan_U, pid 1 is upstart
[08:10] <Jordan_U> chris|: Is it not the responsibility of PID 1 to reap its children? Are there times when a child cannot be reaped? Am I misunderstanding something fundamental?
[08:28] <SpamapS> wow
[08:28] <SpamapS> I googled for 'upstart reap defunct' and your bug came up Jordan_U 
[08:28] <SpamapS> "33 minutes ago"
[08:29] <SpamapS> Jordan_U: its possible, perhaps even likely, that the defunct process is stuck in a syscall
[08:38] <SpamapS> Jordan_U: BTW I would expect upstart to reap zombies yes
[08:38] <SpamapS> Jordan_U: finding where it actually does so in the code, however, is eluding me
[08:38]  * SpamapS heads to bed
[08:39] <Jordan_U> SpamapS: I though that would leave it in a "D" state rather than a "Z" state (as shown in ps).
[15:46] <SpamapS> Jordan_U: agreed, Z should just mean that it has exitted, and init should be calling waitpid on it to let it die