[issue1137] Process stuck with an empty STATE

YONETANI Tomokazu qhwt+dfly at les.ath.cx
Sun Jan 25 01:07:01 PST 2009


On Sun, Jan 25, 2009 at 12:24:26AM -0800, Matthew Dillon wrote:
> 
> :I found a similar zombie process on a PC running -DEVELOPMENT
> :(as of 89f297df...), with p_stat==SACTIVE and p_lock==1.  The stuck
> :process was git again.  The previous ones were `git log', and this time
> :`git show', all of which involve $PAGER.  I tried issuing the same command
> :several times, but I couldn't reproduce another zombie yet.
> 
>     Check p_xstat, see if it is SIGSTOP or SIGTSTP.   I think it's going
>     from SZOMB -> SSTOP -> SACTIVE (on kill or cont) due to the signal.
>     The p_lock == 1 is due to the exiting LWP and is correct.

Yes, that's SIGTSTP (attached `p *zombproc->lh_first' result).

>     I just made another commit which should catch zombied processes which
>     are improperly resurrected by a stop signal.  However, I couldn't
>     reproduce it to test the fix... the window of opportunity is fairly
>     small. 

I found how I made the zombie:
----
$ unset PAGER (or unsetenv if you like *csh)
$ cd /path/to/git/repo
$ git show 55a9cd0fa2b75e61230e2802b78eaec8937a1e42
here the pager display 7 lines of commitlog and the patch, and `(END)'
at the end.  Suspend it by pressing ctrl+Z, then type fg to resume,
and press `q' in the pager to leave it.

$ ps x
now you see another zombie.
----

I'll try this on the new kernel and see if I can still reproduce it.

Thanks.
Attachment:
zombie.txt.bz2
-------------- next part --------------
A non-text attachment was scrubbed...
Name: bin00001.bin
Type: application/octet-stream
Size: 1047 bytes
Desc: "Description: Binary data"
URL: <http://lists.dragonflybsd.org/pipermail/bugs/attachments/20090125/da9fc433/attachment-0018.bin>


More information about the Bugs mailing list