The zombie has involved into /dev/null

Ivan Voras ivoras at freebsd.org
Wed Nov 16 10:35:21 UTC 2011


So, if I understand you correctly, you are reporting a bug in which a
jailed process is holding (the jailed instance of) /dev/null open and
"umount -f" doesn't work on the jailed /dev ?


On 14/11/2011 23:52, Slono Slono wrote:
> On one of servers where installed cacti in jail there is strange enough situation. Sometimes processes poller.php haven't time to successful complete until to beginning of the following session (absence of lock is other problem - its ok) therefore processes breed yet won't begin them kill. During such moments appear zombie processes. However, these zombie show that keep devfs the device. Possibly because are started as
> 
> php <path_to_poller>/poller.php 2>/dev/null 2>&1
> 
> Sending  of any signals (SIGCHILD too) changes nothing. Strange that with -f (force) optons through a umount command is impossible to unmount devfs with which worked as the zombie.
> 
> ps axf  shows:
> ..
> 
> 99551  ??  DsJ      0:00.12 /usr/local/bin/php /usr/local/share/cacti/poller.php
> 99554  ??  ZJ       0:00.02 <defunct>
> .
> 
> lsof -p 99551
> COMMAND   PID USER   FD   TYPE             DEVICE SIZE/OFF    NODE NAME
> php     99551 root  cwd   VBAD                                     (revoked)
> php     99551 root  rtd   VDIR     225,1035534442        3  678909 /usr/jails/jails/mon
> php     99551 root  jld   VDIR     225,1035534442        3  678909 /usr/jails/jails/mon
> php     99551 root  txt   VREG     225,1035534442  3261754 1620922 /usr/jails/jails-data/mon-data/usr/local/bin/php
> php     99551 root  txt   VREG     225,1035534442   246776  626780 /usr/jails/jails-data/mon-data/libexec/ld-elf.so.1
> php     99551 root  txt   VREG     225,1035534442    33600  626862 /usr/jails/jails-data/mon-data/lib/libcrypt.so.5
> php     99551 root  txt   VREG     225,1035534442   377814 1267501 /usr/jails/jails-data/mon-data/usr/local/lib/libpcre.so.0
> php     99551 root  txt   VREG     225,1035534442   150656  626861 /usr/jails/jails-data/mon-data/lib/libm.so.5
> php     99551 root  txt   VREG     225,1035534442  1495740  649173 /usr/jails/jails-data/mon-data/usr/local/lib/libxml2.so.5
> php     99551 root  txt   VREG     225,1035534442    84848  626828 /usr/jails/jails-data/mon-data/lib/libz.so.5
> php     99551 root  txt   VREG     225,1035534442  1074175  649584 /usr/jails/jails-data/mon-data/usr/local/lib/libiconv.so.3
> php     99551 root  txt   VREG     225,1035534442  1270640  626857 /usr/jails/jails-data/mon-data/lib/libc.so.7
> php     99551 root  txt   VREG     225,1035534442    74189  636259 /usr/jails/jails-data/mon-data/usr/local/lib/php/20090626/session.so
> php     99551 root  txt   VREG     225,1035534442    63195  637380 /usr/jails/jails-data/mon-data/usr/local/lib/php/20090626/xml.so
> php     99551 root  txt   VREG     225,1035534442    40650  638507 /usr/jails/jails-data/mon-data/usr/local/lib/php/20090626/snmp.so
> php     99551 root  txt   VREG     225,1035534442   337128  665903 /usr/jails/jails-data/mon-data/usr/lib/libssl.so.6
> php     99551 root  txt   VREG     225,1035534442   730269 8050234 /usr/jails/jails-data/mon-data/usr/local/lib/libnetsnmp.so.30
> php     99551 root  txt   VREG     225,1035534442    35264  626850 /usr/jails/jails-data/mon-data/lib/libkvm.so.5
> php     99551 root  txt   VREG     225,1035534442    19720  626858 /usr/jails/jails-data/mon-data/lib/libdevstat.so.7
> php     99551 root  txt   VREG     225,1035534442  1693344  626824 /usr/jails/jails-data/mon-data/lib/libcrypto.so.6
> php     99551 root  txt   VREG     225,1035534442   105904  666224 /usr/jails/jails-data/mon-data/usr/lib/libelf.so.1
> php     99551 root  txt   VREG     225,1035534442    61034  635955 /usr/jails/jails-data/mon-data/usr/local/lib/php/20090626/mysql.so
> php     99551 root  txt   VREG     225,1035534442    54114  637132 /usr/jails/jails-data/mon-data/usr/local/lib/php/20090626/sockets.so
> php     99551 root    0u  PIPE 0xfffffe07514ab5b0    16384         ->0xfffffe07514ab708
> php     99551 root    1w  VCHR               0,27      0t0      27 /usr/jails/jails/mon/dev (devfs) (like character special /dev/null)
> php     99551 root    2w  VCHR               0,27      0t0      27 /usr/jails/jails/mon/dev (devfs) (like character special /dev/null)
> php     99551 root    3u  unix 0xfffffe074ad832a8      0t0         ->(none)
> php     99551 root    5u  PIPE 0xfffffe043c62fcb8        0         ->0xfffffe043c62fb60
> 
> mount -t devfs |grep mon
> devfs on /usr/jails/jails/mon/dev (devfs, local, multilabel)
> 
> umount -f /usr/jails/jails/mon/dev
> umount: unmount of /usr/jails/jails/mon/dev failed: Device busy
> 
> However apparently devfs is unmount when executed jail stop:
> 
> ls -la /usr/jails/jails/mon/dev
> total 5
> drwxr-xr-x  2 root  wheel  2 Nov 14 22:36 .
> drwxr-xr-x  3 root  wheel  3 Nov 14 22:36 ..
> 
> As can be that zombie blocks devfs or that in system there is an information on active mount when the file system isn't present
> 
> PS: FreeBSD 9.0-RC2 amd64
> 
> _______________________________________________
> freebsd-hackers at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> To unsubscribe, send any mail to "freebsd-hackers-unsubscribe at freebsd.org"
> 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 260 bytes
Desc: OpenPGP digital signature
Url : http://lists.freebsd.org/pipermail/freebsd-hackers/attachments/20111116/114cf333/signature.pgp


More information about the freebsd-hackers mailing list