Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 16 Nov 2011 11:35:04 +0100
From:      Ivan Voras <ivoras@freebsd.org>
To:        freebsd-hackers@freebsd.org
Subject:   Re: The zombie has involved into /dev/null
Message-ID:  <ja03kp$d6t$1@dough.gmane.org>
In-Reply-To: <565501321311150@web150.yandex.ru>
References:  <565501321311150@web150.yandex.ru>

next in thread | previous in thread | raw e-mail | index | archive | help

[-- Attachment #1 --]
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@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.org"
> 


[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.18 (FreeBSD)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk7DkdkACgkQldnAQVacBcgpEACcC6w9Lh/3qQ9z5hsITeizknGK
uO8AoJ+GIclwph9hUcuLbHClFyr84i1T
=USHk
-----END PGP SIGNATURE-----

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?ja03kp$d6t$1>