From owner-freebsd-hackers@FreeBSD.ORG Mon Apr 5 18:59:30 2010 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 137331065670 for ; Mon, 5 Apr 2010 18:59:30 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from mail.zoral.com.ua (mx0.zoral.com.ua [91.193.166.200]) by mx1.freebsd.org (Postfix) with ESMTP id 5877F8FC1F for ; Mon, 5 Apr 2010 18:59:28 +0000 (UTC) Received: from deviant.kiev.zoral.com.ua (root@deviant.kiev.zoral.com.ua [10.1.1.148]) by mail.zoral.com.ua (8.14.2/8.14.2) with ESMTP id o35IxONh006863 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 5 Apr 2010 21:59:24 +0300 (EEST) (envelope-from kostikbel@gmail.com) Received: from deviant.kiev.zoral.com.ua (kostik@localhost [127.0.0.1]) by deviant.kiev.zoral.com.ua (8.14.4/8.14.4) with ESMTP id o35IxOPe005499; Mon, 5 Apr 2010 21:59:24 +0300 (EEST) (envelope-from kostikbel@gmail.com) Received: (from kostik@localhost) by deviant.kiev.zoral.com.ua (8.14.4/8.14.4/Submit) id o35IxODr005498; Mon, 5 Apr 2010 21:59:24 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: deviant.kiev.zoral.com.ua: kostik set sender to kostikbel@gmail.com using -f Date: Mon, 5 Apr 2010 21:59:24 +0300 From: Kostik Belousov To: Petr Salinger Message-ID: <20100405185924.GS2415@deviant.kiev.zoral.com.ua> References: <20100402190239.GL2415@deviant.kiev.zoral.com.ua> <20100403165238.GO2415@deviant.kiev.zoral.com.ua> <20100403171945.GQ2415@deviant.kiev.zoral.com.ua> <20100403210829.GW2415@deviant.kiev.zoral.com.ua> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="4sIpN43wh+0KCG0T" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.2.3i X-Virus-Scanned: clamav-milter 0.95.2 at skuns.kiev.zoral.com.ua X-Virus-Status: Clean X-Spam-Status: No, score=-3.8 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00, DNS_FROM_OPENWHOIS autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on skuns.kiev.zoral.com.ua Cc: freebsd-hackers@freebsd.org Subject: Re: leak of the vnodes X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Apr 2010 18:59:30 -0000 --4sIpN43wh+0KCG0T Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Apr 05, 2010 at 10:36:19PM +0200, Petr Salinger wrote: > >> > >>>>BTW, the 7.3 seems be unaffected by this. > >> > >>Confirmed, the whole build of gcc-4.3 ends with > >> > >>kern.maxvnodes: 100000 > >>kern.minvnodes: 25000 > >>vfs.freevnodes: 22070 > >>vfs.wantfreevnodes: 25000 > >>vfs.numvnodes: 39907 > >>debug.vnlru_nowhere: 0 > >> > >>while for 8.0 kernel even 120000 in vfs.numvnodes does not suffice. > >BTW, can you check latest RELENG_8 kernel, or HEAD, for the issue ? >=20 > Both are affected, the ddb output bellow is from svn206142 for HEAD. >=20 > >>Are all vnodes in some mountpoint ? What pipes and sockets ? > >I do not quite understand the question. > > > >Pipes and sockets are not vnodes, and I want to see what type of > >filesystem (UFS or devfs) leaks. >=20 > I lowered max to get problem earlier >=20 > kern.maxvnodes: 40000 > kern.minvnodes: 25000 > vfs.freevnodes: 0 > vfs.wantfreevnodes: 25000 > vfs.numvnodes: 37934 > debug.vnlru_nowhere: 83 >=20 > I would expect that sum of mnt_nvnodelistsize should be vfs.numvnodes. > The sum is at about 3400, but the vfs.numvnodes is at about 38000. > Is my expectation correct ? Not quite, reclaimed vnode is removed from mp list. Can you check that vmstat -z | grep VNODE output coincides with sysctl vfs.numvnodes ? Also, can you unmount linprocfs before the test and see whether it leaks as before ? Another thing to try is set sysctl debug.disablefullpath to 1. Thanks. >=20 > Petr >=20 > db> show mount >=20 > 0xffffff0003939be0 /dev/ad0s2a on / (ufs) > 0xffffff000393a000 devfs on /dev (devfs) > 0xffffff00039398e8 linprocfs on /proc (linprocfs) > 0xffffff0009b9d000 /dev/ad0s2d on /opt/sid/build (ufs) >=20 > db> show mount 0xffffff0003939be0 >=20 > 0xffffff0003939be0 /dev/ad0s2a on / (ufs) > mnt_flag =3D LOCAL, ROOTFS > mnt_kern_flag =3D EXTENDED_SHARED, MPSAFE, LOOKUP_SHARED > mnt_opt =3D rw, fstype, fspath, from, errmsg, noro > mnt_stat =3D { version=3D537068824 type=3D7 flags=3D0x000000000000500= 0=20 > bsize=3D2048 iosize=3D16384 blocks=3D9233079 bfree=3D1720773 bavail=3D982= 127=20 > files=3D2402302 ffree=3D2211006 syncwrites=3D0 asyncwrites=3D0 syncreads= =3D0=20 > asyncreads=3D0 namemax=3D255 owner=3D0 fsid=3D[1208030997, -638345611] } > mnt_cred =3D { uid=3D0 ruid=3D0 } > mnt_ref =3D 647 > mnt_gen =3D 1 > mnt_nvnodelistsize =3D 647 > mnt_writeopcount =3D 0 > mnt_noasync =3D 0 > mnt_maxsymlinklen =3D 120 > mnt_iosize_max =3D 131072 > mnt_hashseed =3D 3875541360 > mnt_secondary_writes =3D 0 > mnt_secondary_accwrites =3D 1674383 > mnt_gjprovider =3D NULL >=20 > db> show mount 0xffffff000393a000 >=20 > 0xffffff000393a000 devfs on /dev (devfs) > mnt_flag =3D MULTILABEL, LOCAL > mnt_kern_flag =3D MPSAFE > mnt_opt =3D > mnt_stat =3D { version=3D537068824 type=3D2 flags=3D0x000000000400100= 0 bsize=3D0=20 > iosize=3D0 blocks=3D0 bfree=3D0 bavail=3D0 files=3D0 ffree=3D0 syncwrites= =3D0=20 > asyncwrites=3D0 syncreads=3D0 asyncreads=3D0 namemax=3D255 owner=3D0 fsid= =3D[33619712,=20 > 2] } > mnt_cred =3D { uid=3D0 ruid=3D0 } > mnt_ref =3D 36 > mnt_gen =3D 1 > mnt_nvnodelistsize =3D 36 > mnt_writeopcount =3D 0 > mnt_noasync =3D 0 > mnt_maxsymlinklen =3D 0 > mnt_iosize_max =3D 65536 > mnt_hashseed =3D 1577461787 > mnt_secondary_writes =3D 0 > mnt_secondary_accwrites =3D 0 > mnt_gjprovider =3D NULL >=20 >=20 > db> show mount 0xffffff00039398e8 >=20 > 0xffffff00039398e8 linprocfs on /proc (linprocfs) > mnt_flag =3D LOCAL > mnt_kern_flag =3D MPSAFE > mnt_opt =3D fstype, fspath, from, errmsg > mnt_stat =3D { version=3D537068824 type=3D8 flags=3D0x000000000000100= 0=20 > bsize=3D4096 iosize=3D4096 blocks=3D1 bfree=3D0 bavail=3D0 files=3D1 ffre= e=3D0=20 > syncwrites=3D0 asyncwrites=3D0 syncreads=3D0 asyncreads=3D0 namemax=3D255= owner=3D0=20 > fsid=3D[134283009, 8] } > mnt_cred =3D { uid=3D0 ruid=3D0 } > mnt_ref =3D 393 > mnt_gen =3D 1 > mnt_nvnodelistsize =3D 393 > mnt_writeopcount =3D 0 > mnt_noasync =3D 0 > mnt_maxsymlinklen =3D 0 > mnt_iosize_max =3D 65536 > mnt_hashseed =3D 486483318 > mnt_secondary_writes =3D 0 > mnt_secondary_accwrites =3D 0 > mnt_gjprovider =3D NULL >=20 >=20 > db> show mount 0xffffff0009b9d000 >=20 > 0xffffff0009b9d000 /dev/ad0s2d on /opt/sid/build (ufs) > mnt_flag =3D LOCAL > mnt_kern_flag =3D EXTENDED_SHARED, MPSAFE, LOOKUP_SHARED > mnt_opt =3D rw, fstype, fspath, from, errmsg, noro > mnt_stat =3D { version=3D537068824 type=3D7 flags=3D0x000000000000100= 0=20 > bsize=3D2048 iosize=3D16384 blocks=3D9683239 bfree=3D4555857 bavail=3D378= 1198 > files=3D2520062 ffree=3D1888868 syncwrites=3D0 asyncwrites=3D0 syncreads= =3D0=20 > asyncreads=3D0 namemax=3D255 owner=3D0 fsid=3D[1208030997, -1215882613] } > mnt_cred =3D { uid=3D0 ruid=3D0 } > mnt_ref =3D 2297 > mnt_gen =3D 1 > mnt_nvnodelistsize =3D 2296 > mnt_writeopcount =3D 0 > mnt_noasync =3D 0 > mnt_maxsymlinklen =3D 120 > mnt_iosize_max =3D 131072 > mnt_hashseed =3D 1634023874 > mnt_secondary_writes =3D 1 > mnt_secondary_accwrites =3D 1332980 > mnt_gjprovider =3D NULL >=20 --4sIpN43wh+0KCG0T Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (FreeBSD) iEYEARECAAYFAku6MwsACgkQC3+MBN1Mb4ix4wCeI4KBaVtmDKSZ4h3DHHgooJjc A64AoJfln3ZLqFShEjSO+iWDEigb4tkW =kkch -----END PGP SIGNATURE----- --4sIpN43wh+0KCG0T--