From owner-freebsd-fs@FreeBSD.ORG Sun Dec 30 13:11:11 2012 Return-Path: Delivered-To: freebsd-fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 046D05FC; Sun, 30 Dec 2012 13:11:11 +0000 (UTC) (envelope-from ronald-freebsd8@klop.yi.org) Received: from smarthost1.greenhost.nl (smarthost1.greenhost.nl [195.190.28.78]) by mx1.freebsd.org (Postfix) with ESMTP id A8F3A8FC0A; Sun, 30 Dec 2012 13:11:10 +0000 (UTC) Received: from smtp.greenhost.nl ([213.108.104.138]) by smarthost1.greenhost.nl with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.69) (envelope-from ) id 1TpIPw-0003dt-2h; Sun, 30 Dec 2012 13:55:04 +0100 Received: from h253044.upc-h.chello.nl ([62.194.253.44] helo=pinky) by smtp.greenhost.nl with esmtpsa (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.72) (envelope-from ) id 1TpIPv-0007Mt-Jr; Sun, 30 Dec 2012 13:55:03 +0100 Content-Type: text/plain; charset=us-ascii; format=flowed; delsp=yes To: freebsd-fs@freebsd.org, freebsd-arm@freebsd.org Date: Sun, 30 Dec 2012 13:55:02 +0100 Subject: nandfs filling up MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: "Ronald Klop" Message-ID: User-Agent: Opera Mail/12.12 (Win32) X-Virus-Scanned: by clamav at smarthost1.samage.net X-Spam-Level: / X-Spam-Score: -0.0 X-Spam-Status: No, score=-0.0 required=5.0 tests=BAYES_40 autolearn=disabled version=3.3.1 X-Scan-Signature: ba572e8a3bde05b4b19613c12a9e49fc X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 13:11:11 -0000 Hi, I just noticed my nandfs is filling up on a clean install. Running a sheevaplug. FreeBSD sh10.klop.ws 10.0-CURRENT FreeBSD 10.0-CURRENT #10: Sat Dec 15 18:26:46 CET 2012 root@mailjail.klop.ws:/usr/obj/arm.arm/usr/src/sys/SHEEVAPLUG arm From the daily messages to root. Disk status: Filesystem Size Used Avail Capacity Mounted on root@sh10:/var/mail # grep gnand root /dev/gnand0s.root 503M 286M 216M 57% / /dev/gnand0s.root 503M 299M 203M 59% / /dev/gnand0s.root 503M 316M 187M 63% / /dev/gnand0s.root 503M 329M 173M 65% / /dev/gnand0s.root 503M 341M 161M 68% / /dev/gnand0s.root 503M 341M 161M 68% / /dev/gnand0s.root 503M 353M 149M 70% / /dev/gnand0s.root 503M 363M 139M 72% / /dev/gnand0s.root 503M 375M 127M 75% / /dev/gnand0s.root 503M 388M 114M 77% / /dev/gnand0s.root 503M 399M 103M 79% / /dev/gnand0s.root 503M 412M 91M 82% / /dev/gnand0s.root 503M 423M 79M 84% / /dev/gnand0s.root 503M 435M 68M 86% / /dev/gnand0s.root 503M 446M 57M 89% / I did not activate any useful daemons. root@sh10:/var/mail # cat /etc/rc.conf hostname="sh10.klop.ws" ifconfig_DEFAULT="DHCP" fsck_y_enable="YES" background_fsck="NO" sshd_enable="YES" ntpd_enable="YES" ntpd_sync_on_start="YES" I just rebooted the machine to make sure no deleted files are still open. Df still shows 51MB available while du only shows 227MB in use. What can be happening here? Ronald. From owner-freebsd-fs@FreeBSD.ORG Sun Dec 30 14:18:00 2012 Return-Path: Delivered-To: freebsd-fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 8D3D8812; Sun, 30 Dec 2012 14:18:00 +0000 (UTC) (envelope-from ronald-freebsd8@klop.yi.org) Received: from smarthost1.greenhost.nl (smarthost1.greenhost.nl [195.190.28.78]) by mx1.freebsd.org (Postfix) with ESMTP id 102958FC12; Sun, 30 Dec 2012 14:17:59 +0000 (UTC) Received: from smtp.greenhost.nl ([213.108.104.138]) by smarthost1.greenhost.nl with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.69) (envelope-from ) id 1TpJiA-0001LT-7N; Sun, 30 Dec 2012 15:17:58 +0100 Received: from h253044.upc-h.chello.nl ([62.194.253.44] helo=pinky) by smtp.greenhost.nl with esmtpsa (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.72) (envelope-from ) id 1TpJi9-0000IN-HO; Sun, 30 Dec 2012 15:17:57 +0100 Content-Type: text/plain; charset=us-ascii; format=flowed; delsp=yes To: freebsd-fs@freebsd.org, freebsd-arm@freebsd.org, "Mateusz Guzik" Subject: Re: nandfs filling up References: Date: Sun, 30 Dec 2012 15:17:56 +0100 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: "Ronald Klop" Message-ID: In-Reply-To: User-Agent: Opera Mail/12.12 (Win32) X-Virus-Scanned: by clamav at smarthost1.samage.net X-Spam-Level: + X-Spam-Score: 1.1 X-Spam-Status: No, score=1.1 required=5.0 tests=BAYES_20, URI_HEX autolearn=disabled version=3.3.1 X-Scan-Signature: 448baf4759cd3283a5930955cc61e1db X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 14:18:00 -0000 Mateusz, I found this similar issue from last november. http://freebsd.1045724.n5.nabble.com/NANDFS-eats-itself-up-td5764878.html Do you have anything new about this? I'm willing to test anything. Regards, Ronald. On Sun, 30 Dec 2012 13:55:02 +0100, Ronald Klop wrote: > Hi, > > I just noticed my nandfs is filling up on a clean install. > Running a sheevaplug. > FreeBSD sh10.klop.ws 10.0-CURRENT FreeBSD 10.0-CURRENT #10: Sat Dec 15 > 18:26:46 CET 2012 > root@mailjail.klop.ws:/usr/obj/arm.arm/usr/src/sys/SHEEVAPLUG arm > > From the daily messages to root. > Disk status: > Filesystem Size Used Avail Capacity Mounted on > root@sh10:/var/mail # grep gnand root > /dev/gnand0s.root 503M 286M 216M 57% / > /dev/gnand0s.root 503M 299M 203M 59% / > /dev/gnand0s.root 503M 316M 187M 63% / > /dev/gnand0s.root 503M 329M 173M 65% / > /dev/gnand0s.root 503M 341M 161M 68% / > /dev/gnand0s.root 503M 341M 161M 68% / > /dev/gnand0s.root 503M 353M 149M 70% / > /dev/gnand0s.root 503M 363M 139M 72% / > /dev/gnand0s.root 503M 375M 127M 75% / > /dev/gnand0s.root 503M 388M 114M 77% / > /dev/gnand0s.root 503M 399M 103M 79% / > /dev/gnand0s.root 503M 412M 91M 82% / > /dev/gnand0s.root 503M 423M 79M 84% / > /dev/gnand0s.root 503M 435M 68M 86% / > /dev/gnand0s.root 503M 446M 57M 89% / > > I did not activate any useful daemons. > root@sh10:/var/mail # cat /etc/rc.conf > hostname="sh10.klop.ws" > ifconfig_DEFAULT="DHCP" > > fsck_y_enable="YES" > background_fsck="NO" > > sshd_enable="YES" > ntpd_enable="YES" > ntpd_sync_on_start="YES" > > I just rebooted the machine to make sure no deleted files are still open. > Df still shows 51MB available while du only shows 227MB in use. > What can be happening here? > > Ronald. > _______________________________________________ > freebsd-arm@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-arm > To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org" From owner-freebsd-fs@FreeBSD.ORG Sun Dec 30 14:55:57 2012 Return-Path: Delivered-To: fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id EA11C1D0; Sun, 30 Dec 2012 14:55:57 +0000 (UTC) (envelope-from ronald-freebsd8@klop.yi.org) Received: from smarthost1.greenhost.nl (smarthost1.greenhost.nl [195.190.28.78]) by mx1.freebsd.org (Postfix) with ESMTP id 6DCDE8FC12; Sun, 30 Dec 2012 14:55:57 +0000 (UTC) Received: from smtp.greenhost.nl ([213.108.104.138]) by smarthost1.greenhost.nl with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.69) (envelope-from ) id 1TpKIs-00049A-OS; Sun, 30 Dec 2012 15:55:55 +0100 Received: from h253044.upc-h.chello.nl ([62.194.253.44] helo=pinky) by smtp.greenhost.nl with esmtpsa (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.72) (envelope-from ) id 1TpKIs-0001M9-Qu; Sun, 30 Dec 2012 15:55:54 +0100 Content-Type: text/plain; charset=us-ascii; format=flowed; delsp=yes To: fs@freebsd.org, "Konstantin Belousov" Subject: Re: Nandfs use of MNT_VNODE_FOREACH References: <20121227230223.GN82219@kib.kiev.ua> Date: Sun, 30 Dec 2012 15:55:53 +0100 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: "Ronald Klop" Message-ID: In-Reply-To: <20121227230223.GN82219@kib.kiev.ua> User-Agent: Opera Mail/12.12 (Win32) X-Virus-Scanned: by clamav at smarthost1.samage.net X-Spam-Level: / X-Spam-Score: -0.0 X-Spam-Status: No, score=-0.0 required=5.0 tests=BAYES_40 autolearn=disabled version=3.3.1 X-Scan-Signature: d3d6c6694e059b137bd8e4e2c0542d46 Cc: gber@freebsd.org, cognet@freebsd.org X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 14:55:58 -0000 I'm building a patched kernel for my sheevaplug now which reads the kernel from nand and has / mounted from nandfs. What should be tested specifically? Just booting from it? Ronald. On Fri, 28 Dec 2012 00:02:23 +0100, Konstantin Belousov wrote: > I took a look at removing MNT_VNODE_FOREACH interface in the HEAD, > and apparently we still have one user of the said interface, probably, > due to cross-commits. > > Namely, nandfs utilizes the interface. First, it is obsoleted and > is going to be removed. Second, I believe that MNT_VNODE_FOREACH_ACTIVE > would be better choice there, because intent of the loop is to do > something with each dirty vnode, and dirty vnode must be active, because > there are dirty buffers attached to it. > > That said, use of vget(LK_RETRY) and immediate check for VI_DOOMED > is not useful, I removed the LK_RETRY from the lockflags. Another issue > is > that intent was to avoid sleep for locked vnode, but the check is racy. > I used LK_NOWAIT instead. > > Check for mnt_syncer is also usually done as vp->v_type == VNON, but > lets postpone this. > > Could someone who uses the filesystem test the patch below, please ? > > diff --git a/sys/fs/nandfs/nandfs_segment.c > b/sys/fs/nandfs/nandfs_segment.c > index 836bead..a73b7f2 100644 > --- a/sys/fs/nandfs/nandfs_segment.c > +++ b/sys/fs/nandfs/nandfs_segment.c > @@ -481,36 +481,20 @@ nandfs_iterate_dirty_vnodes(struct mount *mp, > struct nandfs_seginfo *seginfo) > int error, lockreq, update; > td = curthread; > - lockreq = LK_EXCLUSIVE | LK_INTERLOCK | LK_RETRY; > + lockreq = LK_EXCLUSIVE | LK_INTERLOCK; > - MNT_ILOCK(mp); > - > - MNT_VNODE_FOREACH(vp, mp, mvp) { > + MNT_VNODE_FOREACH_ACTIVE(vp, mp, mvp) { > update = 0; > if (mp->mnt_syncer == vp) > continue; > - if (VOP_ISLOCKED(vp)) > - continue; > - > - VI_LOCK(vp); > - MNT_IUNLOCK(mp); > - if (vp->v_iflag & VI_DOOMED) { > + if (VOP_ISLOCKED(vp)) { > VI_UNLOCK(vp); > - MNT_ILOCK(mp); > - continue; > - } > - > - if ((error = vget(vp, lockreq, td)) != 0) { > - MNT_ILOCK(mp); > continue; > } > - if (vp->v_iflag & VI_DOOMED) { > - vput(vp); > - MNT_ILOCK(mp); > + if (vget(vp, lockreq, td) != 0) > continue; > - } > nandfs_node = VTON(vp); > if (nandfs_node->nn_flags & IN_MODIFIED) { > @@ -532,12 +516,8 @@ nandfs_iterate_dirty_vnodes(struct mount *mp, > struct nandfs_seginfo *seginfo) > if (update) > nandfs_node_update(nandfs_node); > - > - MNT_ILOCK(mp); > } > - MNT_IUNLOCK(mp); > - > return (0); > } From owner-freebsd-fs@FreeBSD.ORG Sun Dec 30 14:58:18 2012 Return-Path: Delivered-To: fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 6F35F264; Sun, 30 Dec 2012 14:58:18 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) by mx1.freebsd.org (Postfix) with ESMTP id BA3928FC0A; Sun, 30 Dec 2012 14:58:17 +0000 (UTC) Received: from tom.home (kostik@localhost [127.0.0.1]) by kib.kiev.ua (8.14.5/8.14.5) with ESMTP id qBUEwDMn061397; Sun, 30 Dec 2012 16:58:13 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.7.3 kib.kiev.ua qBUEwDMn061397 Received: (from kostik@localhost) by tom.home (8.14.5/8.14.5/Submit) id qBUEwDpC061396; Sun, 30 Dec 2012 16:58:13 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Sun, 30 Dec 2012 16:58:13 +0200 From: Konstantin Belousov To: Ronald Klop Subject: Re: Nandfs use of MNT_VNODE_FOREACH Message-ID: <20121230145813.GI82219@kib.kiev.ua> References: <20121227230223.GN82219@kib.kiev.ua> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="i6ZTfQE1Row3TVml" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) X-Spam-Status: No, score=-2.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FREEMAIL_FROM,NML_ADSP_CUSTOM_MED autolearn=no version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on tom.home Cc: gber@freebsd.org, cognet@freebsd.org, fs@freebsd.org X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 14:58:18 -0000 --i6ZTfQE1Row3TVml Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Dec 30, 2012 at 03:55:53PM +0100, Ronald Klop wrote: > I'm building a patched kernel for my sheevaplug now which reads the kerne= l =20 > from nand and has / mounted from nandfs. > What should be tested specifically? Just booting from it? I suspect that a writeable mount with some / enough write activity is good for the test. Thank you. >=20 > Ronald. >=20 > On Fri, 28 Dec 2012 00:02:23 +0100, Konstantin Belousov =20 > wrote: >=20 > > I took a look at removing MNT_VNODE_FOREACH interface in the HEAD, > > and apparently we still have one user of the said interface, probably, > > due to cross-commits. > > > > Namely, nandfs utilizes the interface. First, it is obsoleted and > > is going to be removed. Second, I believe that MNT_VNODE_FOREACH_ACTIVE > > would be better choice there, because intent of the loop is to do > > something with each dirty vnode, and dirty vnode must be active, because > > there are dirty buffers attached to it. > > > > That said, use of vget(LK_RETRY) and immediate check for VI_DOOMED > > is not useful, I removed the LK_RETRY from the lockflags. Another issue= =20 > > is > > that intent was to avoid sleep for locked vnode, but the check is racy. > > I used LK_NOWAIT instead. > > > > Check for mnt_syncer is also usually done as vp->v_type =3D=3D VNON, but > > lets postpone this. > > > > Could someone who uses the filesystem test the patch below, please ? > > > > diff --git a/sys/fs/nandfs/nandfs_segment.c =20 > > b/sys/fs/nandfs/nandfs_segment.c > > index 836bead..a73b7f2 100644 > > --- a/sys/fs/nandfs/nandfs_segment.c > > +++ b/sys/fs/nandfs/nandfs_segment.c > > @@ -481,36 +481,20 @@ nandfs_iterate_dirty_vnodes(struct mount *mp, =20 > > struct nandfs_seginfo *seginfo) > > int error, lockreq, update; > > td =3D curthread; > > - lockreq =3D LK_EXCLUSIVE | LK_INTERLOCK | LK_RETRY; > > + lockreq =3D LK_EXCLUSIVE | LK_INTERLOCK; > > - MNT_ILOCK(mp); > > - > > - MNT_VNODE_FOREACH(vp, mp, mvp) { > > + MNT_VNODE_FOREACH_ACTIVE(vp, mp, mvp) { > > update =3D 0; > > if (mp->mnt_syncer =3D=3D vp) > > continue; > > - if (VOP_ISLOCKED(vp)) > > - continue; > > - > > - VI_LOCK(vp); > > - MNT_IUNLOCK(mp); > > - if (vp->v_iflag & VI_DOOMED) { > > + if (VOP_ISLOCKED(vp)) { > > VI_UNLOCK(vp); > > - MNT_ILOCK(mp); > > - continue; > > - } > > - > > - if ((error =3D vget(vp, lockreq, td)) !=3D 0) { > > - MNT_ILOCK(mp); > > continue; > > } > > - if (vp->v_iflag & VI_DOOMED) { > > - vput(vp); > > - MNT_ILOCK(mp); > > + if (vget(vp, lockreq, td) !=3D 0) > > continue; > > - } > > nandfs_node =3D VTON(vp); > > if (nandfs_node->nn_flags & IN_MODIFIED) { > > @@ -532,12 +516,8 @@ nandfs_iterate_dirty_vnodes(struct mount *mp, =20 > > struct nandfs_seginfo *seginfo) > > if (update) > > nandfs_node_update(nandfs_node); > > - > > - MNT_ILOCK(mp); > > } > > - MNT_IUNLOCK(mp); > > - > > return (0); > > } --i6ZTfQE1Row3TVml Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iQIcBAEBAgAGBQJQ4FaFAAoJEJDCuSvBvK1BdzIP/R9pHUDfStuweLrY1grLfGZ3 VjmSNhL7J9rTsslmRJCh1cdVhmBR5fdWOr+Gcm7ZMrxPwb+Qh6MVUv1ng8qMLc7p REKHX+QbzLBCJtYBd76DkChchBrIzi5rDN9b3XS40XbKBwepSbiRKFNtcz0++oXI 2ldMDEqB1GAq6G2IrNopGDCREkWp/wkIJkh4v/kGNN3+DOhoh2P1C0ENLn0tJ8lg FwhqEG5ALFc/sKBqdKK3Fpi61jkQ2U7rw8u9v04L2brddUH7bluaIYLMzivr9hfJ lkg4u2gNCx0sIE+3C2YwkGIblJ8m7dLOOTq/AzHzZNhv0WgGD6CSq8r9fTAmNdVg Ekwd8Jyi24l48FQOdHCrJ6bXWX8WEo1sXDw4SJaBRJ26pKXhNPdhCyhEsaaNwta3 MVz9y850c4r9W1ljZZbB4OkqGLyCYFEpT3c+Qmeh5DUw3Scd5cFfSmGl6biAJgxk 1TGFE5GObplpDHUhaKRm5fjXl7uOKr+vcSRByqzJODPGaeZb3XIQGjZumzZU6SZs yffwVVj+1BQqPwaesKnsHrh/JRgmjJNYjiOCScnY9xyZi4g3QMJB/l7qtFPrqGwW AODtC/GzCdO/1OEDP5IiU1QAbd6t2ulDLKCX1JsLilqChqalt3JYmz9Ft9yoPBaZ /xPbKqk0hea5UMEiVki4 =Pnie -----END PGP SIGNATURE----- --i6ZTfQE1Row3TVml-- From owner-freebsd-fs@FreeBSD.ORG Sun Dec 30 23:25:09 2012 Return-Path: Delivered-To: freebsd-fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 0D29BDA4 for ; Sun, 30 Dec 2012 23:25:09 +0000 (UTC) (envelope-from lifanov@mail.lifanov.com) Received: from mail.lifanov.com (mail.lifanov.com [206.125.175.12]) by mx1.freebsd.org (Postfix) with ESMTP id E6F958FC08 for ; Sun, 30 Dec 2012 23:25:08 +0000 (UTC) Received: from app.lifanov.com (chat.lifanov.com [206.125.175.13]) by mail.lifanov.com (Postfix) with ESMTPA id 4C3BB19F888; Sun, 30 Dec 2012 23:25:02 +0000 (UTC) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Date: Sun, 30 Dec 2012 18:25:01 -0500 From: Nikolai Lifanov To: Subject: Re: Zpool made of =?UTF-8?Q?ZVOLs=3F?= Message-ID: <973d506368c26dda4f618556b071e454@mail.lifanov.com> X-Sender: lifanov@mail.lifanov.com User-Agent: Roundcube Webmail/0.8.4 Cc: freebsd-fs@freebsd.org X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 23:25:09 -0000 > Is it possible and even recommended to create a zpool out of block > devices that are actually ZVOLs? > > I'd like to have a separate zfs pool for poudriere because building > ports with it disrupts the snapshotting on my main pool if the > poudirere jails are created on it. At the same time I don't want to > resort to using external disks to create a pool that is only used for > a jail or two. > > Regards, > > -Kimmo > I'm sure that this is not what you want. I think you are trying to snapshot your root pool and volatility + size of poudriere data makes this impractical. The first pool would still be the provider of zvols for the second pool. If you can't have pools backed by separated devices (i.e. rpool on separate disks from tank), then you can always arrange the data that poudriere is interfering with to be on a different dataset. So, from tank/poudriere/... arrangement you can move to tank/ROOT/... and tank/DATA/poudriere. - Nikolai Lifanov From owner-freebsd-fs@FreeBSD.ORG Mon Dec 31 00:52:20 2012 Return-Path: Delivered-To: freebsd-fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 67711C35 for ; Mon, 31 Dec 2012 00:52:20 +0000 (UTC) (envelope-from kpaasial@gmail.com) Received: from mail-wi0-f173.google.com (mail-wi0-f173.google.com [209.85.212.173]) by mx1.freebsd.org (Postfix) with ESMTP id EB71F8FC12 for ; Mon, 31 Dec 2012 00:52:19 +0000 (UTC) Received: by mail-wi0-f173.google.com with SMTP id hn17so9113032wib.12 for ; Sun, 30 Dec 2012 16:52:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=0xv4xxOCzUwHc1EYH4ICMQEvbx4tKEaKB4kMzQD1Ojc=; b=YKPFaeFfys4Wlbb0tVs9GOdL7dpTGwLBmuExTc7S1FttwgPDWT4po+7Kfn7l1fg33y gKXygLsxQ3uMLvt21rdgyOB7fPxZaW6ZW4wMSAQjOpb+Wdl4/cWo3m6SgmfGMcHRx1DM HkC88r+oC47LEggRNt/GhZodaV4vAUH4FzX5l6aanG27hFYB+Tj7/zSVEmrYJYzuNbnO qRFGTCN+N6ty8KWkGlMOfF5F5sRSiGGlCvig9iDBn9HeVq28mltxIlmh5bKfcKAmTFAb 0/52fTRKL0e+5wqTfBsrirIasIOpw5AzYHj1MPgC4eRdoRIdy6x6sfPy+SNtb1ioctHV 1PgQ== MIME-Version: 1.0 Received: by 10.180.93.40 with SMTP id cr8mr61792312wib.15.1356915133446; Sun, 30 Dec 2012 16:52:13 -0800 (PST) Received: by 10.216.172.197 with HTTP; Sun, 30 Dec 2012 16:52:13 -0800 (PST) In-Reply-To: <973d506368c26dda4f618556b071e454@mail.lifanov.com> References: <973d506368c26dda4f618556b071e454@mail.lifanov.com> Date: Mon, 31 Dec 2012 02:52:13 +0200 Message-ID: Subject: Re: Zpool made of ZVOLs? From: Kimmo Paasiala To: Nikolai Lifanov Content-Type: text/plain; charset=UTF-8 Cc: freebsd-fs@freebsd.org X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Dec 2012 00:52:20 -0000 On Mon, Dec 31, 2012 at 1:25 AM, Nikolai Lifanov wrote: >> Is it possible and even recommended to create a zpool out of block >> devices that are actually ZVOLs? >> >> I'd like to have a separate zfs pool for poudriere because building >> ports with it disrupts the snapshotting on my main pool if the >> poudirere jails are created on it. At the same time I don't want to >> resort to using external disks to create a pool that is only used for >> a jail or two. >> >> Regards, >> >> -Kimmo >> > > I'm sure that this is not what you want. > I think you are trying to snapshot your root pool and volatility + size of > poudriere data makes this impractical. The first pool would still be the > provider of zvols for the second pool. > If you can't have pools backed by separated devices (i.e. rpool on separate > disks from tank), then you can always arrange the data that poudriere is > interfering with to be on a different dataset. > So, from tank/poudriere/... arrangement you can move to tank/ROOT/... and > tank/DATA/poudriere. > > - Nikolai Lifanov I solved this by a vnode backed md(4) disk. I know that I could also use little more fine grained snapshoting and backups. Mow I'm just creating recursive back ups for the whole pool and backing up everything using one zfs send, zfs receive operation. From owner-freebsd-fs@FreeBSD.ORG Mon Dec 31 10:04:32 2012 Return-Path: Delivered-To: fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 6836011F; Mon, 31 Dec 2012 10:04:32 +0000 (UTC) (envelope-from ronald-freebsd8@klop.yi.org) Received: from cpsmtpb-ews08.kpnxchange.com (cpsmtpb-ews08.kpnxchange.com [213.75.39.13]) by mx1.freebsd.org (Postfix) with ESMTP id B5B8F8FC12; Mon, 31 Dec 2012 10:04:30 +0000 (UTC) Received: from cpsps-ews03.kpnxchange.com ([10.94.84.170]) by cpsmtpb-ews08.kpnxchange.com with Microsoft SMTPSVC(7.5.7601.17514); Mon, 31 Dec 2012 11:02:20 +0100 Received: from CPSMTPM-TLF102.kpnxchange.com ([195.121.3.5]) by cpsps-ews03.kpnxchange.com with Microsoft SMTPSVC(7.5.7601.17514); Mon, 31 Dec 2012 11:02:20 +0100 Received: from sjakie.klop.ws ([212.182.167.131]) by CPSMTPM-TLF102.kpnxchange.com with Microsoft SMTPSVC(7.5.7601.17514); Mon, 31 Dec 2012 11:03:21 +0100 Received: from 212-182-167-131.ip.telfort.nl (localhost [127.0.0.1]) by sjakie.klop.ws (Postfix) with ESMTP id 78F1C5429; Mon, 31 Dec 2012 11:03:21 +0100 (CET) Content-Type: text/plain; charset=us-ascii; format=flowed; delsp=yes To: fs@freebsd.org, "Konstantin Belousov" Subject: Re: Nandfs use of MNT_VNODE_FOREACH References: <20121227230223.GN82219@kib.kiev.ua> Date: Mon, 31 Dec 2012 11:03:21 +0100 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: "Ronald Klop" Message-ID: In-Reply-To: <20121227230223.GN82219@kib.kiev.ua> User-Agent: Opera Mail/12.12 (FreeBSD) X-OriginalArrivalTime: 31 Dec 2012 10:03:21.0816 (UTC) FILETIME=[10B8FD80:01CDE73E] X-RcptDomain: freebsd.org Cc: gber@freebsd.org, cognet@freebsd.org X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Dec 2012 10:04:32 -0000 On Fri, 28 Dec 2012 00:02:23 +0100, Konstantin Belousov wrote: > I took a look at removing MNT_VNODE_FOREACH interface in the HEAD, > and apparently we still have one user of the said interface, probably, > due to cross-commits. > > Namely, nandfs utilizes the interface. First, it is obsoleted and > is going to be removed. Second, I believe that MNT_VNODE_FOREACH_ACTIVE > would be better choice there, because intent of the loop is to do > something with each dirty vnode, and dirty vnode must be active, because > there are dirty buffers attached to it. > > That said, use of vget(LK_RETRY) and immediate check for VI_DOOMED > is not useful, I removed the LK_RETRY from the lockflags. Another issue > is > that intent was to avoid sleep for locked vnode, but the check is racy. > I used LK_NOWAIT instead. > > Check for mnt_syncer is also usually done as vp->v_type == VNON, but > lets postpone this. > > Could someone who uses the filesystem test the patch below, please ? > > diff --git a/sys/fs/nandfs/nandfs_segment.c > b/sys/fs/nandfs/nandfs_segment.c > index 836bead..a73b7f2 100644 > --- a/sys/fs/nandfs/nandfs_segment.c > +++ b/sys/fs/nandfs/nandfs_segment.c > @@ -481,36 +481,20 @@ nandfs_iterate_dirty_vnodes(struct mount *mp, > struct nandfs_seginfo *seginfo) > int error, lockreq, update; > td = curthread; > - lockreq = LK_EXCLUSIVE | LK_INTERLOCK | LK_RETRY; > + lockreq = LK_EXCLUSIVE | LK_INTERLOCK; > - MNT_ILOCK(mp); > - > - MNT_VNODE_FOREACH(vp, mp, mvp) { > + MNT_VNODE_FOREACH_ACTIVE(vp, mp, mvp) { > update = 0; > if (mp->mnt_syncer == vp) > continue; > - if (VOP_ISLOCKED(vp)) > - continue; > - > - VI_LOCK(vp); > - MNT_IUNLOCK(mp); > - if (vp->v_iflag & VI_DOOMED) { > + if (VOP_ISLOCKED(vp)) { > VI_UNLOCK(vp); > - MNT_ILOCK(mp); > - continue; > - } > - > - if ((error = vget(vp, lockreq, td)) != 0) { > - MNT_ILOCK(mp); > continue; > } > - if (vp->v_iflag & VI_DOOMED) { > - vput(vp); > - MNT_ILOCK(mp); > + if (vget(vp, lockreq, td) != 0) > continue; > - } > nandfs_node = VTON(vp); > if (nandfs_node->nn_flags & IN_MODIFIED) { > @@ -532,12 +516,8 @@ nandfs_iterate_dirty_vnodes(struct mount *mp, > struct nandfs_seginfo *seginfo) > if (update) > nandfs_node_update(nandfs_node); > - > - MNT_ILOCK(mp); > } > - MNT_IUNLOCK(mp); > - > return (0); > } > It looks like it hangs. No DHCP yet, so no ping also. But I have remote debugging. ... [kernel boot messages] ... Trying to mount root from nandfs:/dev/gnand0s.root []... WARNING: NANDFS is considered to be a highly experimental feature in FreeBSD. after vfs_mountroot() start_init: trying /sbin/init sys_execve returned 0 Dec 31 09:57:01 init: init started (probe0:umass-sim0:0:0:0): Down reving Protocol Version from 2 to 0? pass0 at umass-sim0 bus 0 scbus0 target 0 lun 0 pass0: Removable Direct Access SCSI-0 device pass0: Serial Number AA00000000002542 pass0: 40.000MB/s transfers GEOM: new disk da0 da0 at umass-sim0 bus 0 scbus0 target 0 lun 0 da0: Removable Direct Access SCSI-0 device da0: Serial Number AA00000000002542 da0: 40.000MB/s transfers da0: 3894MB (7975296 512 byte sectors: 255H 63S/T 496C) Setting hostuuid: 64f53bc5-bfde-11d3-902f-005043016d4c. Setting hostid: 0x2afd1481. No suitable dump device was found. Entropy harvesting: interrupts ethernet point_to_point(da0:umass-sim0:0:0:0): PREVENT ALLOW MEDIUM REMOVAL. CDB: 1e 0 0 0 1 0 (da0:umass-sim0:0:0:0): CAM status: Auto-Sense Retrieval Failed (da0:umass-sim0:0:0:0): Error 5, Unretryable error sha256: /kernel: No such file or directory kickstart. Starting file system checks: /dev/da0s2: FILE SYSTEM CLEAN; SKIPPING CHECKS /dev/da0s2: clean, 894198 free (2526 frags, 111459 blocks, 0.3% fragmentation) /dev/da0s1: FILESYSTEM CLEAN; SKIPPING CHECKS Mounting local file systems:. Writing entropy file:. Setting hostname: sh10.klop.ws. KDB: enter: Break to debugger [ thread pid 0 tid 100042 ] Stopped at kdb_enter+0x48: ldrb r15, [r15, r15, ror r15]! db> help alltrace b break bt c call capture continue countfreebufsd delete dhwatch dump dwatch examine findstack gdb halt hwatch kill match next p panic print ps reboot reset run s script scripts search set show step t textdump thread trace unscript until w watch watchdog where write x db> Da0 is not interesting. It was used for installing and is not mounted automatically. What debug info can I provide? Ronald. From owner-freebsd-fs@FreeBSD.ORG Mon Dec 31 11:06:44 2012 Return-Path: Delivered-To: freebsd-fs@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 0893CBB3 for ; Mon, 31 Dec 2012 11:06:44 +0000 (UTC) (envelope-from owner-bugmaster@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id E20AB8FC1F for ; Mon, 31 Dec 2012 11:06:43 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id qBVB6h1W080850 for ; Mon, 31 Dec 2012 11:06:43 GMT (envelope-from owner-bugmaster@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id qBVB6h8T080848 for freebsd-fs@FreeBSD.org; Mon, 31 Dec 2012 11:06:43 GMT (envelope-from owner-bugmaster@FreeBSD.org) Date: Mon, 31 Dec 2012 11:06:43 GMT Message-Id: <201212311106.qBVB6h8T080848@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: gnats set sender to owner-bugmaster@FreeBSD.org using -f From: FreeBSD bugmaster To: freebsd-fs@FreeBSD.org Subject: Current problem reports assigned to freebsd-fs@FreeBSD.org X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Dec 2012 11:06:44 -0000 Note: to view an individual PR, use: http://www.freebsd.org/cgi/query-pr.cgi?pr=(number). The following is a listing of current problems submitted by FreeBSD users. These represent problem reports covering all versions including experimental development code and obsolete releases. S Tracker Resp. Description -------------------------------------------------------------------------------- o kern/174372 fs [zfs] Pagefault appears to be related to ZFS o kern/174315 fs [zfs] chflags uchg not supported o kern/174310 fs [zfs] root point mounting broken on CURRENT with multi o kern/174279 fs [ufs] UFS2-SU+J journal and filesystem corruption o kern/174060 fs [ext2fs] Ext2FS system crashes (buffer overflow?) o kern/173830 fs [zfs] Brain-dead simple change to ZFS error descriptio o kern/173718 fs [zfs] phantom directory in zraid2 pool f kern/173657 fs [nfs] strange UID map with nfsuserd o kern/173363 fs [zfs] [panic] Panic on 'zpool replace' on readonly poo o kern/173136 fs [unionfs] mounting above the NFS read-only share panic o kern/172348 fs [unionfs] umount -f of filesystem in use with readonly o kern/172334 fs [unionfs] unionfs permits recursive union mounts; caus o kern/171626 fs [tmpfs] tmpfs should be noisier when the requested siz o kern/171415 fs [zfs] zfs recv fails with "cannot receive incremental o kern/170945 fs [gpt] disk layout not portable between direct connect o bin/170778 fs [zfs] [panic] FreeBSD panics randomly o kern/170680 fs [nfs] Multiple NFS Client bug in the FreeBSD 7.4-RELEA o kern/170497 fs [xfs][panic] kernel will panic whenever I ls a mounted o kern/169945 fs [zfs] [panic] Kernel panic while importing zpool (afte o kern/169480 fs [zfs] ZFS stalls on heavy I/O o kern/169398 fs [zfs] Can't remove file with permanent error o kern/169339 fs panic while " : > /etc/123" o kern/169319 fs [zfs] zfs resilver can't complete o kern/168947 fs [nfs] [zfs] .zfs/snapshot directory is messed up when o kern/168942 fs [nfs] [hang] nfsd hangs after being restarted (not -HU o kern/168158 fs [zfs] incorrect parsing of sharenfs options in zfs (fs o kern/167979 fs [ufs] DIOCGDINFO ioctl does not work on 8.2 file syste o kern/167977 fs [smbfs] mount_smbfs results are differ when utf-8 or U o kern/167688 fs [fusefs] Incorrect signal handling with direct_io o kern/167685 fs [zfs] ZFS on USB drive prevents shutdown / reboot o kern/167612 fs [portalfs] The portal file system gets stuck inside po o kern/167272 fs [zfs] ZFS Disks reordering causes ZFS to pick the wron o kern/167260 fs [msdosfs] msdosfs disk was mounted the second time whe o kern/167109 fs [zfs] [panic] zfs diff kernel panic Fatal trap 9: gene o kern/167105 fs [nfs] mount_nfs can not handle source exports wiht mor o kern/167067 fs [zfs] [panic] ZFS panics the server o kern/167065 fs [zfs] boot fails when a spare is the boot disk o kern/167048 fs [nfs] [patch] RELEASE-9 crash when using ZFS+NULLFS+NF o kern/166912 fs [ufs] [panic] Panic after converting Softupdates to jo o kern/166851 fs [zfs] [hang] Copying directory from the mounted UFS di o kern/166477 fs [nfs] NFS data corruption. o kern/165950 fs [ffs] SU+J and fsck problem o kern/165923 fs [nfs] Writing to NFS-backed mmapped files fails if flu o kern/165521 fs [zfs] [hang] livelock on 1 Gig of RAM with zfs when 31 o kern/165392 fs Multiple mkdir/rmdir fails with errno 31 o kern/165087 fs [unionfs] lock violation in unionfs o kern/164472 fs [ufs] fsck -B panics on particular data inconsistency o kern/164370 fs [zfs] zfs destroy for snapshot fails on i386 and sparc o kern/164261 fs [nullfs] [patch] fix panic with NFS served from NULLFS o kern/164256 fs [zfs] device entry for volume is not created after zfs o kern/164184 fs [ufs] [panic] Kernel panic with ufs_makeinode o kern/163801 fs [md] [request] allow mfsBSD legacy installed in 'swap' o kern/163770 fs [zfs] [hang] LOR between zfs&syncer + vnlru leading to o kern/163501 fs [nfs] NFS exporting a dir and a subdir in that dir to o kern/162944 fs [coda] Coda file system module looks broken in 9.0 o kern/162860 fs [zfs] Cannot share ZFS filesystem to hosts with a hyph o kern/162751 fs [zfs] [panic] kernel panics during file operations o kern/162591 fs [nullfs] cross-filesystem nullfs does not work as expe o kern/162519 fs [zfs] "zpool import" relies on buggy realpath() behavi o kern/162362 fs [snapshots] [panic] ufs with snapshot(s) panics when g o kern/161968 fs [zfs] [hang] renaming snapshot with -r including a zvo o kern/161864 fs [ufs] removing journaling from UFS partition fails on o bin/161807 fs [patch] add option for explicitly specifying metadata o kern/161579 fs [smbfs] FreeBSD sometimes panics when an smb share is o kern/161533 fs [zfs] [panic] zfs receive panic: system ioctl returnin o kern/161438 fs [zfs] [panic] recursed on non-recursive spa_namespace_ o kern/161424 fs [nullfs] __getcwd() calls fail when used on nullfs mou o kern/161280 fs [zfs] Stack overflow in gptzfsboot o kern/161205 fs [nfs] [pfsync] [regression] [build] Bug report freebsd o kern/161169 fs [zfs] [panic] ZFS causes kernel panic in dbuf_dirty o kern/161112 fs [ufs] [lor] filesystem LOR in FreeBSD 9.0-BETA3 o kern/160893 fs [zfs] [panic] 9.0-BETA2 kernel panic o kern/160860 fs [ufs] Random UFS root filesystem corruption with SU+J o kern/160801 fs [zfs] zfsboot on 8.2-RELEASE fails to boot from root-o o kern/160790 fs [fusefs] [panic] VPUTX: negative ref count with FUSE o kern/160777 fs [zfs] [hang] RAID-Z3 causes fatal hang upon scrub/impo o kern/160706 fs [zfs] zfs bootloader fails when a non-root vdev exists o kern/160591 fs [zfs] Fail to boot on zfs root with degraded raidz2 [r o kern/160410 fs [smbfs] [hang] smbfs hangs when transferring large fil o kern/160283 fs [zfs] [patch] 'zfs list' does abort in make_dataset_ha o kern/159930 fs [ufs] [panic] kernel core o kern/159402 fs [zfs][loader] symlinks cause I/O errors o kern/159357 fs [zfs] ZFS MAXNAMELEN macro has confusing name (off-by- o kern/159356 fs [zfs] [patch] ZFS NAME_ERR_DISKLIKE check is Solaris-s o kern/159351 fs [nfs] [patch] - divide by zero in mountnfs() o kern/159251 fs [zfs] [request]: add FLETCHER4 as DEDUP hash option o kern/159077 fs [zfs] Can't cd .. with latest zfs version o kern/159048 fs [smbfs] smb mount corrupts large files o kern/159045 fs [zfs] [hang] ZFS scrub freezes system o kern/158839 fs [zfs] ZFS Bootloader Fails if there is a Dead Disk o kern/158802 fs amd(8) ICMP storm and unkillable process. o kern/158231 fs [nullfs] panic on unmounting nullfs mounted over ufs o f kern/157929 fs [nfs] NFS slow read o kern/157399 fs [zfs] trouble with: mdconfig force delete && zfs strip o kern/157179 fs [zfs] zfs/dbuf.c: panic: solaris assert: arc_buf_remov o kern/156797 fs [zfs] [panic] Double panic with FreeBSD 9-CURRENT and o kern/156781 fs [zfs] zfs is losing the snapshot directory, p kern/156545 fs [ufs] mv could break UFS on SMP systems o kern/156193 fs [ufs] [hang] UFS snapshot hangs && deadlocks processes o kern/156039 fs [nullfs] [unionfs] nullfs + unionfs do not compose, re o kern/155615 fs [zfs] zfs v28 broken on sparc64 -current o kern/155587 fs [zfs] [panic] kernel panic with zfs p kern/155411 fs [regression] [8.2-release] [tmpfs]: mount: tmpfs : No o kern/155199 fs [ext2fs] ext3fs mounted as ext2fs gives I/O errors o bin/155104 fs [zfs][patch] use /dev prefix by default when importing o kern/154930 fs [zfs] cannot delete/unlink file from full volume -> EN o kern/154828 fs [msdosfs] Unable to create directories on external USB o kern/154491 fs [smbfs] smb_co_lock: recursive lock for object 1 p kern/154228 fs [md] md getting stuck in wdrain state o kern/153996 fs [zfs] zfs root mount error while kernel is not located o kern/153753 fs [zfs] ZFS v15 - grammatical error when attempting to u o kern/153716 fs [zfs] zpool scrub time remaining is incorrect o kern/153695 fs [patch] [zfs] Booting from zpool created on 4k-sector o kern/153680 fs [xfs] 8.1 failing to mount XFS partitions o kern/153418 fs [zfs] [panic] Kernel Panic occurred writing to zfs vol o kern/153351 fs [zfs] locking directories/files in ZFS o bin/153258 fs [patch][zfs] creating ZVOLs requires `refreservation' s kern/153173 fs [zfs] booting from a gzip-compressed dataset doesn't w o bin/153142 fs [zfs] ls -l outputs `ls: ./.zfs: Operation not support o kern/153126 fs [zfs] vdev failure, zpool=peegel type=vdev.too_small o kern/152022 fs [nfs] nfs service hangs with linux client [regression] o kern/151942 fs [zfs] panic during ls(1) zfs snapshot directory o kern/151905 fs [zfs] page fault under load in /sbin/zfs o bin/151713 fs [patch] Bug in growfs(8) with respect to 32-bit overfl o kern/151648 fs [zfs] disk wait bug o kern/151629 fs [fs] [patch] Skip empty directory entries during name o kern/151330 fs [zfs] will unshare all zfs filesystem after execute a o kern/151326 fs [nfs] nfs exports fail if netgroups contain duplicate o kern/151251 fs [ufs] Can not create files on filesystem with heavy us o kern/151226 fs [zfs] can't delete zfs snapshot o kern/150503 fs [zfs] ZFS disks are UNAVAIL and corrupted after reboot o kern/150501 fs [zfs] ZFS vdev failure vdev.bad_label on amd64 o kern/150390 fs [zfs] zfs deadlock when arcmsr reports drive faulted o kern/150336 fs [nfs] mountd/nfsd became confused; refused to reload n o kern/149208 fs mksnap_ffs(8) hang/deadlock o kern/149173 fs [patch] [zfs] make OpenSolaris installa o kern/149015 fs [zfs] [patch] misc fixes for ZFS code to build on Glib o kern/149014 fs [zfs] [patch] declarations in ZFS libraries/utilities o kern/149013 fs [zfs] [patch] make ZFS makefiles use the libraries fro o kern/148504 fs [zfs] ZFS' zpool does not allow replacing drives to be o kern/148490 fs [zfs]: zpool attach - resilver bidirectionally, and re o kern/148368 fs [zfs] ZFS hanging forever on 8.1-PRERELEASE o kern/148138 fs [zfs] zfs raidz pool commands freeze o kern/147903 fs [zfs] [panic] Kernel panics on faulty zfs device o kern/147881 fs [zfs] [patch] ZFS "sharenfs" doesn't allow different " o kern/147420 fs [ufs] [panic] ufs_dirbad, nullfs, jail panic (corrupt o kern/146941 fs [zfs] [panic] Kernel Double Fault - Happens constantly o kern/146786 fs [zfs] zpool import hangs with checksum errors o kern/146708 fs [ufs] [panic] Kernel panic in softdep_disk_write_compl o kern/146528 fs [zfs] Severe memory leak in ZFS on i386 o kern/146502 fs [nfs] FreeBSD 8 NFS Client Connection to Server s kern/145712 fs [zfs] cannot offline two drives in a raidz2 configurat o kern/145411 fs [xfs] [panic] Kernel panics shortly after mounting an f bin/145309 fs bsdlabel: Editing disk label invalidates the whole dev o kern/145272 fs [zfs] [panic] Panic during boot when accessing zfs on o kern/145246 fs [ufs] dirhash in 7.3 gratuitously frees hashes when it o kern/145238 fs [zfs] [panic] kernel panic on zpool clear tank o kern/145229 fs [zfs] Vast differences in ZFS ARC behavior between 8.0 o kern/145189 fs [nfs] nfsd performs abysmally under load o kern/144929 fs [ufs] [lor] vfs_bio.c + ufs_dirhash.c p kern/144447 fs [zfs] sharenfs fsunshare() & fsshare_main() non functi o kern/144416 fs [panic] Kernel panic on online filesystem optimization s kern/144415 fs [zfs] [panic] kernel panics on boot after zfs crash o kern/144234 fs [zfs] Cannot boot machine with recent gptzfsboot code o kern/143825 fs [nfs] [panic] Kernel panic on NFS client o bin/143572 fs [zfs] zpool(1): [patch] The verbose output from iostat o kern/143212 fs [nfs] NFSv4 client strange work ... o kern/143184 fs [zfs] [lor] zfs/bufwait LOR o kern/142878 fs [zfs] [vfs] lock order reversal o kern/142597 fs [ext2fs] ext2fs does not work on filesystems with real o kern/142489 fs [zfs] [lor] allproc/zfs LOR o kern/142466 fs Update 7.2 -> 8.0 on Raid 1 ends with screwed raid [re o kern/142306 fs [zfs] [panic] ZFS drive (from OSX Leopard) causes two o kern/142068 fs [ufs] BSD labels are got deleted spontaneously o kern/141897 fs [msdosfs] [panic] Kernel panic. msdofs: file name leng o kern/141463 fs [nfs] [panic] Frequent kernel panics after upgrade fro o kern/141305 fs [zfs] FreeBSD ZFS+sendfile severe performance issues ( o kern/141091 fs [patch] [nullfs] fix panics with DIAGNOSTIC enabled o kern/141086 fs [nfs] [panic] panic("nfs: bioread, not dir") on FreeBS o kern/141010 fs [zfs] "zfs scrub" fails when backed by files in UFS2 o kern/140888 fs [zfs] boot fail from zfs root while the pool resilveri o kern/140661 fs [zfs] [patch] /boot/loader fails to work on a GPT/ZFS- o kern/140640 fs [zfs] snapshot crash o kern/140068 fs [smbfs] [patch] smbfs does not allow semicolon in file o kern/139725 fs [zfs] zdb(1) dumps core on i386 when examining zpool c o kern/139715 fs [zfs] vfs.numvnodes leak on busy zfs p bin/139651 fs [nfs] mount(8): read-only remount of NFS volume does n o kern/139407 fs [smbfs] [panic] smb mount causes system crash if remot o kern/138662 fs [panic] ffs_blkfree: freeing free block o kern/138421 fs [ufs] [patch] remove UFS label limitations o kern/138202 fs mount_msdosfs(1) see only 2Gb o kern/136968 fs [ufs] [lor] ufs/bufwait/ufs (open) o kern/136945 fs [ufs] [lor] filedesc structure/ufs (poll) o kern/136944 fs [ffs] [lor] bufwait/snaplk (fsync) o kern/136873 fs [ntfs] Missing directories/files on NTFS volume o kern/136865 fs [nfs] [patch] NFS exports atomic and on-the-fly atomic p kern/136470 fs [nfs] Cannot mount / in read-only, over NFS o kern/135546 fs [zfs] zfs.ko module doesn't ignore zpool.cache filenam o kern/135469 fs [ufs] [panic] kernel crash on md operation in ufs_dirb o kern/135050 fs [zfs] ZFS clears/hides disk errors on reboot o kern/134491 fs [zfs] Hot spares are rather cold... o kern/133676 fs [smbfs] [panic] umount -f'ing a vnode-based memory dis p kern/133174 fs [msdosfs] [patch] msdosfs must support multibyte inter o kern/132960 fs [ufs] [panic] panic:ffs_blkfree: freeing free frag o kern/132397 fs reboot causes filesystem corruption (failure to sync b o kern/132331 fs [ufs] [lor] LOR ufs and syncer o kern/132237 fs [msdosfs] msdosfs has problems to read MSDOS Floppy o kern/132145 fs [panic] File System Hard Crashes o kern/131441 fs [unionfs] [nullfs] unionfs and/or nullfs not combineab o kern/131360 fs [nfs] poor scaling behavior of the NFS server under lo o kern/131342 fs [nfs] mounting/unmounting of disks causes NFS to fail o bin/131341 fs makefs: error "Bad file descriptor" on the mount poin o kern/130920 fs [msdosfs] cp(1) takes 100% CPU time while copying file o kern/130210 fs [nullfs] Error by check nullfs o kern/129760 fs [nfs] after 'umount -f' of a stale NFS share FreeBSD l o kern/129488 fs [smbfs] Kernel "bug" when using smbfs in smbfs_smb.c: o kern/129231 fs [ufs] [patch] New UFS mount (norandom) option - mostly o kern/129152 fs [panic] non-userfriendly panic when trying to mount(8) o kern/127787 fs [lor] [ufs] Three LORs: vfslock/devfs/vfslock, ufs/vfs o bin/127270 fs fsck_msdosfs(8) may crash if BytesPerSec is zero o kern/127029 fs [panic] mount(8): trying to mount a write protected zi o kern/126287 fs [ufs] [panic] Kernel panics while mounting an UFS file o kern/125895 fs [ffs] [panic] kernel: panic: ffs_blkfree: freeing free s kern/125738 fs [zfs] [request] SHA256 acceleration in ZFS o kern/123939 fs [msdosfs] corrupts new files o kern/122380 fs [ffs] ffs_valloc:dup alloc (Soekris 4801/7.0/USB Flash o bin/122172 fs [fs]: amd(8) automount daemon dies on 6.3-STABLE i386, o bin/121898 fs [nullfs] pwd(1)/getcwd(2) fails with Permission denied o bin/121072 fs [smbfs] mount_smbfs(8) cannot normally convert the cha o kern/120483 fs [ntfs] [patch] NTFS filesystem locking changes o kern/120482 fs [ntfs] [patch] Sync style changes between NetBSD and F o kern/118912 fs [2tb] disk sizing/geometry problem with large array o kern/118713 fs [minidump] [patch] Display media size required for a k o kern/118318 fs [nfs] NFS server hangs under special circumstances o bin/118249 fs [ufs] mv(1): moving a directory changes its mtime o kern/118126 fs [nfs] [patch] Poor NFS server write performance o kern/118107 fs [ntfs] [panic] Kernel panic when accessing a file at N o kern/117954 fs [ufs] dirhash on very large directories blocks the mac o bin/117315 fs [smbfs] mount_smbfs(8) and related options can't mount o kern/117158 fs [zfs] zpool scrub causes panic if geli vdevs detach on o bin/116980 fs [msdosfs] [patch] mount_msdosfs(8) resets some flags f o conf/116931 fs lack of fsck_cd9660 prevents mounting iso images with o kern/116583 fs [ffs] [hang] System freezes for short time when using o bin/115361 fs [zfs] mount(8) gets into a state where it won't set/un o kern/114955 fs [cd9660] [patch] [request] support for mask,dirmask,ui o kern/114847 fs [ntfs] [patch] [request] dirmask support for NTFS ala o kern/114676 fs [ufs] snapshot creation panics: snapacct_ufs2: bad blo o bin/114468 fs [patch] [request] add -d option to umount(8) to detach o kern/113852 fs [smbfs] smbfs does not properly implement DFS referral o bin/113838 fs [patch] [request] mount(8): add support for relative p o bin/113049 fs [patch] [request] make quot(8) use getopt(3) and show o kern/112658 fs [smbfs] [patch] smbfs and caching problems (resolves b o kern/111843 fs [msdosfs] Long Names of files are incorrectly created o kern/111782 fs [ufs] dump(8) fails horribly for large filesystems s bin/111146 fs [2tb] fsck(8) fails on 6T filesystem o bin/107829 fs [2TB] fdisk(8): invalid boundary checking in fdisk / w o kern/106107 fs [ufs] left-over fsck_snapshot after unfinished backgro o kern/104406 fs [ufs] Processes get stuck in "ufs" state under persist o kern/104133 fs [ext2fs] EXT2FS module corrupts EXT2/3 filesystems o kern/103035 fs [ntfs] Directories in NTFS mounted disc images appear o kern/101324 fs [smbfs] smbfs sometimes not case sensitive when it's s o kern/99290 fs [ntfs] mount_ntfs ignorant of cluster sizes s bin/97498 fs [request] newfs(8) has no option to clear the first 12 o kern/97377 fs [ntfs] [patch] syntax cleanup for ntfs_ihash.c o kern/95222 fs [cd9660] File sections on ISO9660 level 3 CDs ignored o kern/94849 fs [ufs] rename on UFS filesystem is not atomic o bin/94810 fs fsck(8) incorrectly reports 'file system marked clean' o kern/94769 fs [ufs] Multiple file deletions on multi-snapshotted fil o kern/94733 fs [smbfs] smbfs may cause double unlock o kern/93942 fs [vfs] [patch] panic: ufs_dirbad: bad dir (patch from D o kern/92272 fs [ffs] [hang] Filling a filesystem while creating a sna o kern/91134 fs [smbfs] [patch] Preserve access and modification time a kern/90815 fs [smbfs] [patch] SMBFS with character conversions somet o kern/88657 fs [smbfs] windows client hang when browsing a samba shar o kern/88555 fs [panic] ffs_blkfree: freeing free frag on AMD 64 o bin/87966 fs [patch] newfs(8): introduce -A flag for newfs to enabl o kern/87859 fs [smbfs] System reboot while umount smbfs. o kern/86587 fs [msdosfs] rm -r /PATH fails with lots of small files o bin/85494 fs fsck_ffs: unchecked use of cg_inosused macro etc. o kern/80088 fs [smbfs] Incorrect file time setting on NTFS mounted vi o bin/74779 fs Background-fsck checks one filesystem twice and omits o kern/73484 fs [ntfs] Kernel panic when doing `ls` from the client si o bin/73019 fs [ufs] fsck_ufs(8) cannot alloc 607016868 bytes for ino o kern/71774 fs [ntfs] NTFS cannot "see" files on a WinXP filesystem o bin/70600 fs fsck(8) throws files away when it can't grow lost+foun o kern/68978 fs [panic] [ufs] crashes with failing hard disk, loose po o kern/65920 fs [nwfs] Mounted Netware filesystem behaves strange o kern/65901 fs [smbfs] [patch] smbfs fails fsx write/truncate-down/tr o kern/61503 fs [smbfs] mount_smbfs does not work as non-root o kern/55617 fs [smbfs] Accessing an nsmb-mounted drive via a smb expo o kern/51685 fs [hang] Unbounded inode allocation causes kernel to loc o kern/36566 fs [smbfs] System reboot with dead smb mount and umount o bin/27687 fs fsck(8) wrapper is not properly passing options to fsc o kern/18874 fs [2TB] 32bit NFS servers export wrong negative values t 294 problems total. From owner-freebsd-fs@FreeBSD.ORG Mon Dec 31 16:22:03 2012 Return-Path: Delivered-To: fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6AC3D590; Mon, 31 Dec 2012 16:22:03 +0000 (UTC) (envelope-from mjguzik@gmail.com) Received: from mail-wg0-f50.google.com (mail-wg0-f50.google.com [74.125.82.50]) by mx1.freebsd.org (Postfix) with ESMTP id 9E0188FC12; Mon, 31 Dec 2012 16:22:02 +0000 (UTC) Received: by mail-wg0-f50.google.com with SMTP id es5so5744848wgb.17 for ; Mon, 31 Dec 2012 08:22:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:date:from:to:cc:subject:message-id:references :mime-version:content-type:content-disposition:in-reply-to :user-agent; bh=V/IaEb+C9Rh3Ncu44VZZE3Mn4kiZd24HxGGXC24u6SE=; b=KUxMvSEY8AS7gIvDMfJJThg/qEk57PVgM1j09JcmRTT8JpB7tSm6QpYGGo0lnTU9e+ vVyg89kDrYiOixUmm62Ih4C1duMl/eg5z3E2mB5uWh5g2BGf0bwMLE0MCoh34VpJ+GCZ 4A9EgePsx1a5gq1FsP6BUp0WckOhAZgjlYciYYEng1HTSWXrTKCDYdjH5qNdzaRO+7D/ ayBtTrNIaGBfI8Ki0T6xEguFyR8S/pSB3I+Z6yLJ0NxzZDhWDjbDwnWZkIZ4gIAyJila NlTp+rVVfW9LpbRS6gAYsHPg2pQa5swHiaQiiW6Ineuqd90cy0wX+UmxKog3TkZPuD7p CXOA== X-Received: by 10.180.24.133 with SMTP id u5mr55301513wif.17.1356970921656; Mon, 31 Dec 2012 08:22:01 -0800 (PST) Received: from dft-labs.eu (n1x0n-1-pt.tunnel.tserv5.lon1.ipv6.he.net. [2001:470:1f08:1f7::2]) by mx.google.com with ESMTPS id bw9sm49686866wib.5.2012.12.31.08.21.57 (version=TLSv1/SSLv3 cipher=OTHER); Mon, 31 Dec 2012 08:21:58 -0800 (PST) Date: Mon, 31 Dec 2012 17:21:45 +0100 From: Mateusz Guzik To: Ronald Klop Subject: Re: Nandfs use of MNT_VNODE_FOREACH Message-ID: <20121231162145.GA29588@dft-labs.eu> References: <20121227230223.GN82219@kib.kiev.ua> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.20 (2009-06-14) Cc: gber@freebsd.org, cognet@freebsd.org, fs@freebsd.org X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Dec 2012 16:22:03 -0000 On Mon, Dec 31, 2012 at 11:03:21AM +0100, Ronald Klop wrote: > On Fri, 28 Dec 2012 00:02:23 +0100, Konstantin Belousov > wrote: > > >diff --git a/sys/fs/nandfs/nandfs_segment.c > >b/sys/fs/nandfs/nandfs_segment.c > >index 836bead..a73b7f2 100644 > >--- a/sys/fs/nandfs/nandfs_segment.c > >+++ b/sys/fs/nandfs/nandfs_segment.c > >@@ -481,36 +481,20 @@ nandfs_iterate_dirty_vnodes(struct mount > >*mp, struct nandfs_seginfo *seginfo) > > int error, lockreq, update; > > td = curthread; > >- lockreq = LK_EXCLUSIVE | LK_INTERLOCK | LK_RETRY; > >+ lockreq = LK_EXCLUSIVE | LK_INTERLOCK; > >- MNT_ILOCK(mp); > >- > >- MNT_VNODE_FOREACH(vp, mp, mvp) { > >+ MNT_VNODE_FOREACH_ACTIVE(vp, mp, mvp) { > > update = 0; > > if (mp->mnt_syncer == vp) > > continue; > >- if (VOP_ISLOCKED(vp)) > >- continue; > >- > >- VI_LOCK(vp); > >- MNT_IUNLOCK(mp); > >- if (vp->v_iflag & VI_DOOMED) { > >+ if (VOP_ISLOCKED(vp)) { > > VI_UNLOCK(vp); > >- MNT_ILOCK(mp); > >- continue; > >- } > >- > >- if ((error = vget(vp, lockreq, td)) != 0) { > >- MNT_ILOCK(mp); > > continue; > > } > >- if (vp->v_iflag & VI_DOOMED) { > >- vput(vp); > >- MNT_ILOCK(mp); > >+ if (vget(vp, lockreq, td) != 0) > > continue; > >- } > > nandfs_node = VTON(vp); > > if (nandfs_node->nn_flags & IN_MODIFIED) { > >@@ -532,12 +516,8 @@ nandfs_iterate_dirty_vnodes(struct mount *mp, > >struct nandfs_seginfo *seginfo) > > if (update) > > nandfs_node_update(nandfs_node); > >- > >- MNT_ILOCK(mp); > > } > >- MNT_IUNLOCK(mp); > >- > > return (0); > > } > > > > It looks like it hangs. No DHCP yet, so no ping also. But I have > remote debugging. > Cursory look suggests that with this patch we leak interlock for syncer vnode and this is possibly the problem. Can you adjust this function so that 'if (mp->mnt_syncer == vp)' performs VI_UNLOCK as well? Something like: if (mp->mnt_syncer == vp || VOP_ISLOCKED(vp)) { VI_UNLOCK(mp); continue; } I will have time to dig into this next week. -- Mateusz Guzik From owner-freebsd-fs@FreeBSD.ORG Mon Dec 31 16:25:55 2012 Return-Path: Delivered-To: fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 955076B7; Mon, 31 Dec 2012 16:25:55 +0000 (UTC) (envelope-from mjguzik@gmail.com) Received: from mail-wi0-x22a.google.com (mail-wi0-x22a.google.com [IPv6:2a00:1450:400c:c05::22a]) by mx1.freebsd.org (Postfix) with ESMTP id CC9A08FC0A; Mon, 31 Dec 2012 16:25:54 +0000 (UTC) Received: by mail-wi0-f170.google.com with SMTP id hq7so6339249wib.5 for ; Mon, 31 Dec 2012 08:25:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:date:from:to:cc:subject:message-id:references :mime-version:content-type:content-disposition:in-reply-to :user-agent; bh=V/OTS8E4ZOQ035pvlktNg6jh7cFwYBMSIlnsyHZDK30=; b=OB7GHf3rC6vIyrHC5vxuaCudp8T8Nm8G5yX24Ab+KkpNJCQUMpSDuUMplceunDyyPZ F5nY706MvtSlCXXR/dnFedqQZ+HzBBUBojk5Rbn3XuWgMSxJAT0NWRjCL8h67XkksVxd Mo3OySnpedpo/GUSp7pX+7Ik2tIaoqIHUNhFPiv3pXDxm3pyjRNqwI3d9ukhcndHdKga /m3Qqm2XPrrASFox/h13sTSWwvp1FG7PgIA/jOKi/UFbBFNwE00KjRwtr9yh/inUqJxS UxJ2aLIoT119UwIGIQwN/tlkWKWmUQz8Y+IB3mehcOSXRzOkATb851P6sNXYz8HpHADi pctg== X-Received: by 10.194.171.198 with SMTP id aw6mr51312634wjc.3.1356971154057; Mon, 31 Dec 2012 08:25:54 -0800 (PST) Received: from dft-labs.eu (n1x0n-1-pt.tunnel.tserv5.lon1.ipv6.he.net. [2001:470:1f08:1f7::2]) by mx.google.com with ESMTPS id hu8sm54275058wib.6.2012.12.31.08.25.51 (version=TLSv1/SSLv3 cipher=OTHER); Mon, 31 Dec 2012 08:25:53 -0800 (PST) Date: Mon, 31 Dec 2012 17:25:40 +0100 From: Mateusz Guzik To: Ronald Klop Subject: Re: Nandfs use of MNT_VNODE_FOREACH Message-ID: <20121231162540.GB29588@dft-labs.eu> References: <20121227230223.GN82219@kib.kiev.ua> <20121231162145.GA29588@dft-labs.eu> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20121231162145.GA29588@dft-labs.eu> User-Agent: Mutt/1.5.20 (2009-06-14) Cc: gber@freebsd.org, cognet@freebsd.org, fs@freebsd.org X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Dec 2012 16:25:55 -0000 On Mon, Dec 31, 2012 at 05:21:45PM +0100, Mateusz Guzik wrote: > Can you adjust this function so that 'if (mp->mnt_syncer == vp)' > performs VI_UNLOCK as well? > > Something like: > if (mp->mnt_syncer == vp || VOP_ISLOCKED(vp)) { > VI_UNLOCK(mp); > continue; > } > > I will have time to dig into this next week. Err.. I meant VI_UNLOCK(vp). -- Mateusz Guzik From owner-freebsd-fs@FreeBSD.ORG Mon Dec 31 16:26:43 2012 Return-Path: Delivered-To: fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 4E83473F; Mon, 31 Dec 2012 16:26:43 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) by mx1.freebsd.org (Postfix) with ESMTP id 97E6E8FC13; Mon, 31 Dec 2012 16:26:42 +0000 (UTC) Received: from tom.home (kostik@localhost [127.0.0.1]) by kib.kiev.ua (8.14.5/8.14.5) with ESMTP id qBVGQbw8049575; Mon, 31 Dec 2012 18:26:37 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.7.3 kib.kiev.ua qBVGQbw8049575 Received: (from kostik@localhost) by tom.home (8.14.5/8.14.5/Submit) id qBVGQb79049574; Mon, 31 Dec 2012 18:26:37 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Mon, 31 Dec 2012 18:26:37 +0200 From: Konstantin Belousov To: Ronald Klop Subject: Re: Nandfs use of MNT_VNODE_FOREACH Message-ID: <20121231162637.GM82219@kib.kiev.ua> References: <20121227230223.GN82219@kib.kiev.ua> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="Zqu75NDXmDJGUu04" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) X-Spam-Status: No, score=-2.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FREEMAIL_FROM,NML_ADSP_CUSTOM_MED autolearn=no version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on tom.home Cc: gber@freebsd.org, cognet@freebsd.org, fs@freebsd.org X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Dec 2012 16:26:43 -0000 --Zqu75NDXmDJGUu04 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Dec 31, 2012 at 11:03:21AM +0100, Ronald Klop wrote: > It looks like it hangs. No DHCP yet, so no ping also. But I have remote = =20 > debugging. >=20 >=20 > ... [kernel boot messages] ... > Trying to mount root from nandfs:/dev/gnand0s.root []... > WARNING: NANDFS is considered to be a highly experimental feature in =20 > FreeBSD. > after vfs_mountroot() > start_init: trying /sbin/init > sys_execve returned 0 > Dec 31 09:57:01 init: init started > (probe0:umass-sim0:0:0:0): Down reving Protocol Version from 2 to 0? > pass0 at umass-sim0 bus 0 scbus0 target 0 lun 0 > pass0: Removable Direct Access SCSI-0 devi= ce > pass0: Serial Number AA00000000002542 > pass0: 40.000MB/s transfers > GEOM: new disk da0 > da0 at umass-sim0 bus 0 scbus0 target 0 lun 0 > da0: Removable Direct Access SCSI-0 device > da0: Serial Number AA00000000002542 > da0: 40.000MB/s transfers > da0: 3894MB (7975296 512 byte sectors: 255H 63S/T 496C) > Setting hostuuid: 64f53bc5-bfde-11d3-902f-005043016d4c. > Setting hostid: 0x2afd1481. > No suitable dump device was found. > Entropy harvesting: interrupts ethernet =20 > point_to_point(da0:umass-sim0:0:0:0): PREVENT ALLOW MEDIUM REMOVAL. CDB: = =20 > 1e 0 0 0 1 0 > (da0:umass-sim0:0:0:0): CAM status: Auto-Sense Retrieval Failed > (da0:umass-sim0:0:0:0): Error 5, Unretryable error > sha256: /kernel: No such file or directory > kickstart. > Starting file system checks: > /dev/da0s2: FILE SYSTEM CLEAN; SKIPPING CHECKS > /dev/da0s2: clean, 894198 free (2526 frags, 111459 blocks, 0.3% =20 > fragmentation) > /dev/da0s1: FILESYSTEM CLEAN; SKIPPING CHECKS > Mounting local file systems:. > Writing entropy file:. > Setting hostname: sh10.klop.ws. >=20 > KDB: enter: Break to debugger > [ thread pid 0 tid 100042 ] > Stopped at kdb_enter+0x48: ldrb r15, [r15, r15, ror r15]! > db> help > alltrace b break bt c call > capture continue countfreebufsd delete dhwatch > dump dwatch examine findstack gdb halt > hwatch kill match next p panic > print ps reboot reset run s > script scripts search set show step > t textdump thread trace unscript until > w watch watchdog where write x > db> >=20 > Da0 is not interesting. It was used for installing and is not mounted =20 > automatically. > What debug info can I provide? Please see http://www.freebsd.org/doc/en_US.ISO8859-1/books/developers-handbook/kernel= debug-deadlocks.html --Zqu75NDXmDJGUu04 Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iQIcBAEBAgAGBQJQ4by8AAoJEJDCuSvBvK1BQ7UQAJgsMcusrqiELGH9pskzCw/f LLjUqontNfxA50KeIQFFQCTsUUMeCKS6Z1GZhxhCFmRhwf9ExPuj59bh05WAeAIs UuL5nAV5SE9Np0AWTVlzcjJbBFA8GU0eMb2UufOWmPoSLSE43U1LqG0EyyxYUe1K 3flGf6yJ6Uey5dZOgyrI6/Ya8vdApsWT4sNn6TKQefTgYHxn5UvxD405ota7b5e7 9tVPzlVGeV/fyuzyDoqiUwZnxBcyUNQprXYIexdDQrFykgkBbeX1wSonQC8kEpzr Ys4cj5FkOH4dIjzOPKweHAQfgb2qIo8Utlm80Z5Oe5GC4CG61aDrmoFwJmHlbrNP w4+4TtD1LWn51IjQ6g9Gwh8N8ziD0zesbmeR7KUbHcOdECTvJlOK7UprH9U4DmvB vXM8Y93sJR52f+n3E2DKInpTRt/Zv4CrVjOPkFQbxRL/CjE700DF2em+0X/S/c8R TLkiegqe3oTaUVFis3KLgUNJSFgZTLCukPaxm3Juj8Ou0ON8CWxdEr5b2hXY9WqU I9NwGTiWCEfYyov4CAy6G5AraH7KlQJDAsY2kzG4C51x05iyUaUDrwJl88iFowo4 p6TiPKa+kyMhLEzhbsgc+mj62E/Ne1Mfz1Z0Wckv8wz/d57htoIlzfBt5az8WTGT dhy4AkyDgyfgERYmnp86 =48x6 -----END PGP SIGNATURE----- --Zqu75NDXmDJGUu04-- From owner-freebsd-fs@FreeBSD.ORG Mon Dec 31 16:30:44 2012 Return-Path: Delivered-To: fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 10E288DB; Mon, 31 Dec 2012 16:30:44 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) by mx1.freebsd.org (Postfix) with ESMTP id 824798FC08; Mon, 31 Dec 2012 16:30:43 +0000 (UTC) Received: from tom.home (kostik@localhost [127.0.0.1]) by kib.kiev.ua (8.14.5/8.14.5) with ESMTP id qBVGUeQI050094; Mon, 31 Dec 2012 18:30:40 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.7.3 kib.kiev.ua qBVGUeQI050094 Received: (from kostik@localhost) by tom.home (8.14.5/8.14.5/Submit) id qBVGUdPA050093; Mon, 31 Dec 2012 18:30:39 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Mon, 31 Dec 2012 18:30:39 +0200 From: Konstantin Belousov To: Mateusz Guzik Subject: Re: Nandfs use of MNT_VNODE_FOREACH Message-ID: <20121231163039.GN82219@kib.kiev.ua> References: <20121227230223.GN82219@kib.kiev.ua> <20121231162145.GA29588@dft-labs.eu> <20121231162540.GB29588@dft-labs.eu> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="MgcI0aUO3vrRQI/Z" Content-Disposition: inline In-Reply-To: <20121231162540.GB29588@dft-labs.eu> User-Agent: Mutt/1.5.21 (2010-09-15) X-Spam-Status: No, score=-2.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FREEMAIL_FROM,NML_ADSP_CUSTOM_MED autolearn=no version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on tom.home Cc: gber@freebsd.org, cognet@freebsd.org, fs@freebsd.org, Ronald Klop X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Dec 2012 16:30:44 -0000 --MgcI0aUO3vrRQI/Z Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Dec 31, 2012 at 05:25:40PM +0100, Mateusz Guzik wrote: > On Mon, Dec 31, 2012 at 05:21:45PM +0100, Mateusz Guzik wrote: > > Can you adjust this function so that 'if (mp->mnt_syncer =3D=3D vp)' > > performs VI_UNLOCK as well? > >=20 > > Something like: > > if (mp->mnt_syncer =3D=3D vp || VOP_ISLOCKED(vp)) { > > VI_UNLOCK(mp); > > continue; > > } > >=20 > > I will have time to dig into this next week. >=20 > Err.. I meant VI_UNLOCK(vp). This is definitely a bug, thank you for noticing. Updated patch below. diff --git a/sys/fs/nandfs/nandfs_segment.c b/sys/fs/nandfs/nandfs_segment.c index 836bead..7433e77 100644 --- a/sys/fs/nandfs/nandfs_segment.c +++ b/sys/fs/nandfs/nandfs_segment.c @@ -478,39 +478,19 @@ nandfs_iterate_dirty_vnodes(struct mount *mp, struct = nandfs_seginfo *seginfo) struct nandfs_node *nandfs_node; struct vnode *vp, *mvp; struct thread *td; - int error, lockreq, update; + int error, update; =20 td =3D curthread; - lockreq =3D LK_EXCLUSIVE | LK_INTERLOCK | LK_RETRY; =20 - MNT_ILOCK(mp); - - MNT_VNODE_FOREACH(vp, mp, mvp) { + MNT_VNODE_FOREACH_ACTIVE(vp, mp, mvp) { update =3D 0; =20 - if (mp->mnt_syncer =3D=3D vp) - continue; - if (VOP_ISLOCKED(vp)) - continue; - - VI_LOCK(vp); - MNT_IUNLOCK(mp); - if (vp->v_iflag & VI_DOOMED) { + if (mp->mnt_syncer =3D=3D vp || VOP_ISLOCKED(vp)) { VI_UNLOCK(vp); - MNT_ILOCK(mp); - continue; - } - - if ((error =3D vget(vp, lockreq, td)) !=3D 0) { - MNT_ILOCK(mp); continue; } - - if (vp->v_iflag & VI_DOOMED) { - vput(vp); - MNT_ILOCK(mp); + if (vget(vp, LK_EXCLUSIVE | LK_INTERLOCK | LK_NOWAIT, td) !=3D 0) continue; - } =20 nandfs_node =3D VTON(vp); if (nandfs_node->nn_flags & IN_MODIFIED) { @@ -532,12 +512,8 @@ nandfs_iterate_dirty_vnodes(struct mount *mp, struct n= andfs_seginfo *seginfo) =20 if (update) nandfs_node_update(nandfs_node); - - MNT_ILOCK(mp); } =20 - MNT_IUNLOCK(mp); - return (0); } =20 --MgcI0aUO3vrRQI/Z Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iQIcBAEBAgAGBQJQ4b2uAAoJEJDCuSvBvK1BirsP/j49Hr3KDA75njTYexQ25KkS UzHLOHxh2xz+NZNhxfkQpYyucW3lZfz66yozWDKUazM3JJ5rqxXr2iFhZgoEB39q ezOtmNShrobbTDMDDnd5pL+WgldLUQj24wIsMJFBoJObkoirlj9MFWmvM0mt4gqn CAdRm7VtIzaMqYjcHmyuQZD+2D4Ez0iOCPw+4E63rdeAbQN6BMiXiudiJVLa7vuS ROUe5yLwePc62X1mYIpO8OwKY6DAECDAsSMyzx0g/L8t9/i9vbmTjZKMxb9H7LWU ZlN2XFOm3VB/E4N4PPPVKZT28EP3sNdG66sFBTFeAbp0eC5wAO41hcuKAN4oTJhw GCRwSbeZ5eysxslJLoWdbI6sBK7G5cBjKrQ762oWpMbwBTFomy1qZ9zAUJodn9Yo Ga1hni+qpjV9srCLYkgV+lu722oa4XLZL6PV+0Yxr0PqzCYtitGgcqFPLhGjW3Wf UkyN2/2gM27Jse3awuzhf7I7tfiRPu6dDDuZcS5z9P/vvf1a989xMcznN4yEStpJ D41zV3bmnUkYgeXGdct5TU8U4O6zaXmFK32UZhgdlQQ2Jy3vAIQ3xxy83PsF3O2j PinHTNLFCfkv69sxgTGED6JfyAKHvSVvY6ULz7UlaZxLiokHjuREVZzUsdKN2mxT 8UYORwzW/G90namk7KaO =MCgR -----END PGP SIGNATURE----- --MgcI0aUO3vrRQI/Z-- From owner-freebsd-fs@FreeBSD.ORG Mon Dec 31 16:53:27 2012 Return-Path: Delivered-To: fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id BF5DD378; Mon, 31 Dec 2012 16:53:27 +0000 (UTC) (envelope-from ronald-freebsd8@klop.yi.org) Received: from cpsmtpb-ews09.kpnxchange.com (cpsmtpb-ews09.kpnxchange.com [213.75.39.14]) by mx1.freebsd.org (Postfix) with ESMTP id 0E1708FC12; Mon, 31 Dec 2012 16:53:26 +0000 (UTC) Received: from cpsps-ews23.kpnxchange.com ([10.94.84.189]) by cpsmtpb-ews09.kpnxchange.com with Microsoft SMTPSVC(7.5.7601.17514); Mon, 31 Dec 2012 17:49:49 +0100 Received: from CPSMTPM-TLF104.kpnxchange.com ([195.121.3.7]) by cpsps-ews23.kpnxchange.com with Microsoft SMTPSVC(7.5.7601.17514); Mon, 31 Dec 2012 17:49:49 +0100 Received: from sjakie.klop.ws ([212.182.167.131]) by CPSMTPM-TLF104.kpnxchange.com with Microsoft SMTPSVC(7.5.7601.17514); Mon, 31 Dec 2012 17:50:50 +0100 Received: from 212-182-167-131.ip.telfort.nl (localhost [127.0.0.1]) by sjakie.klop.ws (Postfix) with ESMTP id F09C37442; Mon, 31 Dec 2012 17:50:49 +0100 (CET) Content-Type: text/plain; charset=us-ascii; format=flowed; delsp=yes To: "Mateusz Guzik" , "Konstantin Belousov" Subject: Re: Nandfs use of MNT_VNODE_FOREACH References: <20121227230223.GN82219@kib.kiev.ua> <20121231162145.GA29588@dft-labs.eu> <20121231162540.GB29588@dft-labs.eu> <20121231163039.GN82219@kib.kiev.ua> Date: Mon, 31 Dec 2012 17:50:48 +0100 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: "Ronald Klop" Message-ID: In-Reply-To: <20121231163039.GN82219@kib.kiev.ua> User-Agent: Opera Mail/12.12 (FreeBSD) X-OriginalArrivalTime: 31 Dec 2012 16:50:51.0007 (UTC) FILETIME=[FD9378F0:01CDE776] X-RcptDomain: freebsd.org Cc: gber@freebsd.org, cognet@freebsd.org, fs@freebsd.org X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Dec 2012 16:53:27 -0000 On Mon, 31 Dec 2012 17:30:39 +0100, Konstantin Belousov wrote: > On Mon, Dec 31, 2012 at 05:25:40PM +0100, Mateusz Guzik wrote: >> On Mon, Dec 31, 2012 at 05:21:45PM +0100, Mateusz Guzik wrote: >> > Can you adjust this function so that 'if (mp->mnt_syncer == vp)' >> > performs VI_UNLOCK as well? >> > >> > Something like: >> > if (mp->mnt_syncer == vp || VOP_ISLOCKED(vp)) { >> > VI_UNLOCK(mp); >> > continue; >> > } >> > >> > I will have time to dig into this next week. >> >> Err.. I meant VI_UNLOCK(vp). > > This is definitely a bug, thank you for noticing. Updated patch below. > > diff --git a/sys/fs/nandfs/nandfs_segment.c > b/sys/fs/nandfs/nandfs_segment.c > index 836bead..7433e77 100644 > --- a/sys/fs/nandfs/nandfs_segment.c > +++ b/sys/fs/nandfs/nandfs_segment.c > @@ -478,39 +478,19 @@ nandfs_iterate_dirty_vnodes(struct mount *mp, > struct nandfs_seginfo *seginfo) > struct nandfs_node *nandfs_node; > struct vnode *vp, *mvp; > struct thread *td; > - int error, lockreq, update; > + int error, update; > td = curthread; > - lockreq = LK_EXCLUSIVE | LK_INTERLOCK | LK_RETRY; > - MNT_ILOCK(mp); > - > - MNT_VNODE_FOREACH(vp, mp, mvp) { > + MNT_VNODE_FOREACH_ACTIVE(vp, mp, mvp) { > update = 0; > - if (mp->mnt_syncer == vp) > - continue; > - if (VOP_ISLOCKED(vp)) > - continue; > - > - VI_LOCK(vp); > - MNT_IUNLOCK(mp); > - if (vp->v_iflag & VI_DOOMED) { > + if (mp->mnt_syncer == vp || VOP_ISLOCKED(vp)) { > VI_UNLOCK(vp); > - MNT_ILOCK(mp); > - continue; > - } > - > - if ((error = vget(vp, lockreq, td)) != 0) { > - MNT_ILOCK(mp); > continue; > } > - > - if (vp->v_iflag & VI_DOOMED) { > - vput(vp); > - MNT_ILOCK(mp); > + if (vget(vp, LK_EXCLUSIVE | LK_INTERLOCK | LK_NOWAIT, td) != 0) > continue; > - } > nandfs_node = VTON(vp); > if (nandfs_node->nn_flags & IN_MODIFIED) { > @@ -532,12 +512,8 @@ nandfs_iterate_dirty_vnodes(struct mount *mp, > struct nandfs_seginfo *seginfo) > if (update) > nandfs_node_update(nandfs_node); > - > - MNT_ILOCK(mp); > } > - MNT_IUNLOCK(mp); > - > return (0); > } > This boots fine. I added some options from the kernel debugging handbook. Some LORs appear. I will copy-paste them here. Trying to mount root from nandfs:/dev/gnand0s.root []... WARNING: NANDFS is considered to be a highly experimental feature in FreeBSD. (probe0:umass-sim0:0:0:0): Down reving Protocol Version from 2 to 0? pass0 at umass-sim0 bus 0 scbus0 target 0 lun 0 pass0: Removable Direct Access SCSI-0 device pass0: Serial Number AA00000000002542 pass0: 40.000MB/s transfers da0 at umass-sim0 bus 0 scbus0 target 0 lun 0 da0: Removable Direct Access SCSI-0 device da0: Serial Number AA00000000002542 da0: 40.000MB/s transfers da0: 3894MB (7975296 512 byte sectors: 255H 63S/T 496C) GEOM: new disk da0 lock order reversal: 1st 0xcc334d40 bufwait (bufwait) @ /usr/src/sys/kern/vfs_bio.c:1898 2nd 0xc3ef4a30 snandfs (snandfs) @ /usr/src/sys/fs/nandfs/nandfs_subr.c:444 3rd 0xcc334860 bufwait (bufwait) @ /usr/src/sys/kern/vfs_bio.c:2631 KDB: stack backtrace: db_trace_self() at db_trace_self+0x10 scp=0xc0bb462c rlv=0xc09334d8 (X_db_sym_numargs+0x1bc) rsp=0xd35ae3ec rfp=0xd35ae508 X_db_sym_numargs() at X_db_sym_numargs+0x198 scp=0xc09334b4 rlv=0xc0a6ed5c (kdb_backtrace+0x3c) rsp=0xd35ae50c rfp=0xd35ae51c r4=0xc0cc7838 kdb_backtrace() at kdb_backtrace+0x10 scp=0xc0a6ed30 rlv=0xc0a853e8 (witness_display_spinlock+0x80) rsp=0xd35ae520 rfp=0xd35ae534 r4=0x00000001 witness_display_spinlock() at witness_display_spinlock+0x60 scp=0xc0a853c8 rlv=0xc0a861c4 (witness_checkorder+0x8b4) rsp=0xd35ae538 rfp=0xd35ae588 r5=0xc3ef4a30 r4=0xc0c27690 witness_checkorder() at witness_checkorder+0x10 scp=0xc0a85920 rlv=0xc0a253bc (__lockmgr_args+0x828) rsp=0xd35ae58c rfp=0xd35ae5e8 r10=0x00000000 r9=0xc3ef4ad0 r8=0x00081900 r7=0xc3685000 r6=0xcc334860 r5=0x00000100 r4=0x00080000 __lockmgr_args() at __lockmgr_args+0x10 scp=0xc0a24ba4 rlv=0xc0ab9ff0 (getblk+0x128) rsp=0xd35ae5ec rfp=0xd35ae630 r10=0x00000000 r9=0x00000000 r8=0x000002a4 r7=0xc3ef4ad0 r6=0xcc334800 r5=0x00000000 r4=0x00000000 getblk() at getblk+0x10 scp=0xc0ab9ed8 rlv=0xc0aba918 (breadn_flags+0x30) rsp=0xd35ae634 rfp=0xd35ae658 r10=0xd35ae6e4 r9=0x0001500a r8=0xc3fe8000 r7=0x00000000 r6=0xc3ef49d8 r5=0x00000000 r4=0x00000000 breadn_flags() at breadn_flags+0x10 scp=0xc0aba8f8 rlv=0xc098ea58 (nandfs_bread+0x80) rsp=0xd35ae65c rfp=0xd35ae6a0 r6=0x000002a4 r5=0xc3fe8000 r4=0x00000000 nandfs_bread() at nandfs_bread+0x10 scp=0xc098e9e8 rlv=0xc098efb0 (nandfs_vtop+0xfc) rsp=0xd35ae6a4 rfp=0xd35ae710 r10=0x00000000 r8=0xc3fe8000 r7=0x00000000 r6=0xd35ae72c r5=0xc3fe7db0 r4=0x00000000 nandfs_vtop() at nandfs_vtop+0x10 scp=0xc098eec4 rlv=0xc099551c (nandfs_itimes+0x304) rsp=0xd35ae714 rfp=0xd35ae764 r10=0x00001000 r9=0xc3fc5000 r8=0xc3fe7db0 r7=0x00000000 r6=0x00000000 r5=0xcc334ce0 r4=0x00001000 nandfs_itimes() at nandfs_itimes+0x228 scp=0xc0995440 rlv=0xc0be0284 (VOP_STRATEGY_APV+0xbc) rsp=0xd35ae768 rfp=0xd35ae780 r10=0xd35ae9ec r9=0x00000000 r8=0xc36e25c0 r7=0x00000000 r6=0xd35ae788 r5=0xc0c91a00 r4=0xc0c42434 VOP_STRATEGY_APV() at VOP_STRATEGY_APV+0x10 scp=0xc0be01d8 rlv=0xc0ab47a8 (bufstrategy+0x68) rsp=0xd35ae784 rfp=0xd35ae7a8 r6=0xc3ef4870 r5=0xcc334ce0 r4=0xc3ef4870 bufstrategy() at bufstrategy+0x10 scp=0xc0ab4750 rlv=0xc0abaa34 (breadn_flags+0x14c) rsp=0xd35ae7ac rfp=0xd35ae7d0 r5=0x00000000 r4=0xcc334ce0 breadn_flags() at breadn_flags+0x10 scp=0xc0aba8f8 rlv=0xc098ea58 (nandfs_bread+0x80) rsp=0xd35ae7d4 rfp=0xd35ae818 r6=0x00000000 r5=0xc3fe7db0 r4=0x00000000 nandfs_bread() at nandfs_bread+0x10 scp=0xc098e9e8 rlv=0xc0993afc (nandfs_wakeup_wait_sync+0x2e0c) rsp=0xd35ae81c rfp=0xd35aea9c r10=0xc3fe7db0 r8=0xc36e25c0 r7=0x00000000 r6=0xd35ae9bc r5=0x00000000 r4=0xc3fda360 nandfs_wakeup_wait_sync() at nandfs_wakeup_wait_sync+0xc9c scp=0xc099198c rlv=0xc0ac8390 (vfs_donmount+0x9c8) rsp=0xd35aeaa0 rfp=0xd35aec80 r10=0xd35aec84 r9=0x00000000 r8=0xc3fe0bc0 r7=0x00000000 r6=0x00004001 r5=0xd35aebbc r4=0x00000000 vfs_donmount() at vfs_donmount+0x10 scp=0xc0ac79d8 rlv=0xc0ac8ec4 (kernel_mount+0x90) rsp=0xd35aec84 rfp=0xd35aecc4 r10=0xc3fe5a00 r9=0x00000000 r8=0x00000000 r7=0x00004000 r6=0x00000000 r5=0xc3fda400 r4=0xffffffff kernel_mount() at kernel_mount+0x10 scp=0xc0ac8e44 rlv=0xc0ac99a0 (root_mount_hold+0x684) rsp=0xd35aecc8 rfp=0xd35aecfc r8=0xc36e2427 r7=0xc36e2420 r6=0xc3fda400 r5=0xd35aecd0 r4=0xffffffff root_mount_hold() at root_mount_hold+0x3a0 scp=0xc0ac96bc rlv=0xc0aca734 (vfs_mountroot+0xca0) rsp=0xd35aed00 rfp=0xd35aee2c r10=0xc36e23c0 r9=0xc3683000 r8=0xd35aeeac r7=0xc3fe1000 r6=0xc0c29240 r5=0x00000000 r4=0x00000000 vfs_mountroot() at vfs_mountroot+0x10 scp=0xc0ac9aa4 rlv=0xc09f8754 (exec_shell_imgact+0x7ac) rsp=0xd35aee30 rfp=0xd35aee84 r10=0x00000000 r9=0xc3683000 r8=0xd35aeeac r7=0x00000000 r6=0xc09f86fc r5=0xc0c1167c r4=0xc0cb9448 exec_shell_imgact() at exec_shell_imgact+0x764 scp=0xc09f870c rlv=0xc0a14fd4 (fork_exit+0x98) rsp=0xd35aee88 rfp=0xd35aeea8 r10=0x00000000 r9=0x00000000 r8=0xd35aeeac r7=0x00000000 r6=0xc09f86fc r5=0xc3683000 r4=0xc3685000 fork_exit() at fork_exit+0x10 scp=0xc0a14f4c rlv=0xc0bc4ad4 (fork_trampoline+0x14) rsp=0xd35aeeac rfp=0x00000000 r8=0x00000000 r7=0x00000000 r6=0x00000000 r5=0x00000000 r4=0xc09f86fc after vfs_mountroot() start_init: trying /sbin/init sys_execve returned 0 (da0:umass-sim0:0:0:0): PREVENT ALLOW MEDIUM REMOVAL. CDB: 1e 0 0 0 1 0 (da0:umass-sim0:0:0:0): CAM status: Auto-Sense Retrieval Failed (da0:umass-sim0:0:0:0): Error 5, Unretryable error Dec 31 16:42:47 init: init started Setting hostuuid: 64f53bc5-bfde-11d3-902f-005043016d4c. Setting hostid: 0x2afd1481. No suitable dump device was found. Entropy harvesting: interrupts ethernet point_to_pointsha256: /kernel: No such file or directory kickstart. Starting file system checks: /dev/da0s2: FILE SYSTEM CLEAN; SKIPPING CHECKS /dev/da0s2: clean, 894115 free (2531 frags, 111448 blocks, 0.3% fragmentation) /dev/da0s1: FILESYSTEM CLEAN; SKIPPING CHECKS lock order reversal: 1st 0xc3ef4a30 snandfs (snandfs) @ /usr/src/sys/fs/nandfs/nandfs_segment.c:1199 2nd 0xc3ef4b98 devfs (devfs) @ /usr/src/sys/fs/nandfs/nandfs_segment.c:793 KDB: stack backtrace: db_trace_self() at db_trace_self+0x10 scp=0xc0bb462c rlv=0xc09334d8 (X_db_sym_numargs+0x1bc) rsp=0xd5bf8b1c rfp=0xd5bf8c38 X_db_sym_numargs() at X_db_sym_numargs+0x198 scp=0xc09334b4 rlv=0xc0a6ed5c (kdb_backtrace+0x3c) rsp=0xd5bf8c3c rfp=0xd5bf8c4c r4=0xc0cc7838 kdb_backtrace() at kdb_backtrace+0x10 scp=0xc0a6ed30 rlv=0xc0a853e8 (witness_display_spinlock+0x80) rsp=0xd5bf8c50 rfp=0xd5bf8c64 r4=0x00000001 witness_display_spinlock() at witness_display_spinlock+0x60 scp=0xc0a853c8 rlv=0xc0a861c4 (witness_checkorder+0x8b4) rsp=0xd5bf8c68 rfp=0xd5bf8cb8 r5=0xc3ef4a30 r4=0xc0c14ad8 witness_checkorder() at witness_checkorder+0x10 scp=0xc0a85920 rlv=0xc0a253bc (__lockmgr_args+0x828) rsp=0xd5bf8cbc rfp=0xd5bf8d18 r10=0xc36e2680 r9=0xc3ef4c04 r8=0x00080000 r7=0xc400dc00 r6=0xc3ef4b98 r5=0x00000000 r4=0x00080000 __lockmgr_args() at __lockmgr_args+0x10 scp=0xc0a24ba4 rlv=0xc0abfc30 (vop_stdlock+0x48) rsp=0xd5bf8d1c rfp=0xd5bf8d38 r10=0xc36e2680 r9=0xc4011880 r8=0xc3fc5000 r7=0x00000001 r6=0x00000000 r5=0xd5bf8d68 r4=0xc0ca4dfc vop_stdlock() at vop_stdlock+0x10 scp=0xc0abfbf8 rlv=0xc0be0500 (VOP_LOCK1_APV+0xa0) rsp=0xd5bf8d3c rfp=0xd5bf8d50 VOP_LOCK1_APV() at VOP_LOCK1_APV+0x10 scp=0xc0be0470 rlv=0xc098b824 (nandfs_node_create+0x1994) rsp=0xd5bf8d54 rfp=0xd5bf8da4 r5=0xc4011880 r4=0xd5bf8e14 nandfs_node_create() at nandfs_node_create+0x194c scp=0xc098b7dc rlv=0xc098bb90 (nandfs_node_create+0x1d00) rsp=0xd5bf8da8 rfp=0xd5bf8dcc r10=0xc36e2680 r9=0xc3fc5000 r8=0xc3fc5000 r7=0x00000001 r6=0x00000000 r5=0xc4011880 r4=0xd5bf8e14 nandfs_node_create() at nandfs_node_create+0x1c48 scp=0xc098bad8 rlv=0xc098c354 (nandfs_segment_constructor+0x740) rsp=0xd5bf8dd0 rfp=0xd5bf8e64 r10=0xc36e2680 r8=0xc3fc5000 r7=0xc36e2680 r6=0x00000000 r5=0x0003c9ca r4=0xd5bf8e14 nandfs_segment_constructor() at nandfs_segment_constructor+0x10 scp=0xc098bc24 rlv=0xc0990bc4 (nandfs_get_seg_stat+0x518) rsp=0xd5bf8e68 rfp=0xd5bf8e84 r10=0x00000104 r9=0x00000000 r8=0xd5bf8eac r7=0xc36e25c0 r6=0xc3fc5000 r5=0xc36e25c0 r4=0x00000000 nandfs_get_seg_stat() at nandfs_get_seg_stat+0x49c scp=0xc0990b48 rlv=0xc0a14fd4 (fork_exit+0x98) rsp=0xd5bf8e88 rfp=0xd5bf8ea8 r6=0xc0990b38 r5=0xc0cb74c4 r4=0xc400dc00 fork_exit() at fork_exit+0x10 scp=0xc0a14f4c rlv=0xc0bc4ad4 (fork_trampoline+0x14) rsp=0xd5bf8eac rfp=0x00000000 r8=0xc0cb77b0 r7=0x00000000 r6=0x00000000 r5=0xc36e25c0 r4=0xc0990b38 Mounting local file systems:. Writing entropy file:. Setting hostname: sh10.klop.ws. Starting Network: lo0 mge0. lo0: flags=8049 metric 0 mtu 16384 options=600003 inet 127.0.0.1 netmask 0xff000000 mge0: flags=8843 metric mge0: link state changed to UP 0 mtu 1500 options=8000b ether 00:50:43:01:6d:4c media: Ethernet autoselect (100baseTX ) status: active Starting devd. Starting dhclient. DHCPDISCOVER on mge0 to 255.255.255.255 port 67 interval 6 DHCPOFFER from 192.168.1.254 DHCPREQUEST on mge0 to 255.255.255.255 port 67 DHCPACK from 192.168.1.254 bound to 192.168.1.35 -- renewal in 43200 seconds. Creating and/or trimming log files. Starting syslogd. realpath: /dev/dumpdev: No such file or directory /etc/rc: WARNING: Dump device does not exist. Savecore not run. ELF ldconfig path: /lib /usr/lib /usr/lib/compat Clearing /tmp (X related). Updating motd:. Starting ntpd. Performing sanity check on sshd configuration. Starting sshd. Starting cron. Mon Dec 31 16:43:48 UTC 2012 FreeBSD/arm (sh10.klop.ws) (ttyu0) login: Regards, Ronald. From owner-freebsd-fs@FreeBSD.ORG Mon Dec 31 17:27:52 2012 Return-Path: Delivered-To: fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 13C82C95; Mon, 31 Dec 2012 17:27:52 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) by mx1.freebsd.org (Postfix) with ESMTP id 49CB68FC0A; Mon, 31 Dec 2012 17:27:51 +0000 (UTC) Received: from tom.home (kostik@localhost [127.0.0.1]) by kib.kiev.ua (8.14.5/8.14.5) with ESMTP id qBVHRjqa055540; Mon, 31 Dec 2012 19:27:45 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.7.3 kib.kiev.ua qBVHRjqa055540 Received: (from kostik@localhost) by tom.home (8.14.5/8.14.5/Submit) id qBVHRiCr055539; Mon, 31 Dec 2012 19:27:44 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Mon, 31 Dec 2012 19:27:44 +0200 From: Konstantin Belousov To: Ronald Klop Subject: Re: Nandfs use of MNT_VNODE_FOREACH Message-ID: <20121231172744.GQ82219@kib.kiev.ua> References: <20121227230223.GN82219@kib.kiev.ua> <20121231162145.GA29588@dft-labs.eu> <20121231162540.GB29588@dft-labs.eu> <20121231163039.GN82219@kib.kiev.ua> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="1xJJiECQTZ8+YlWm" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) X-Spam-Status: No, score=-2.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FREEMAIL_FROM,NML_ADSP_CUSTOM_MED autolearn=no version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on tom.home Cc: cognet@freebsd.org, fs@freebsd.org, gber@freebsd.org X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Dec 2012 17:27:52 -0000 --1xJJiECQTZ8+YlWm Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Dec 31, 2012 at 05:50:48PM +0100, Ronald Klop wrote: > On Mon, 31 Dec 2012 17:30:39 +0100, Konstantin Belousov =20 > wrote: >=20 > > On Mon, Dec 31, 2012 at 05:25:40PM +0100, Mateusz Guzik wrote: > >> On Mon, Dec 31, 2012 at 05:21:45PM +0100, Mateusz Guzik wrote: > >> > Can you adjust this function so that 'if (mp->mnt_syncer =3D=3D vp)' > >> > performs VI_UNLOCK as well? > >> > > >> > Something like: > >> > if (mp->mnt_syncer =3D=3D vp || VOP_ISLOCKED(vp)) { > >> > VI_UNLOCK(mp); > >> > continue; > >> > } > >> > > >> > I will have time to dig into this next week. > >> > >> Err.. I meant VI_UNLOCK(vp). > > > > This is definitely a bug, thank you for noticing. Updated patch below. > > > > diff --git a/sys/fs/nandfs/nandfs_segment.c =20 > > b/sys/fs/nandfs/nandfs_segment.c > > index 836bead..7433e77 100644 > > --- a/sys/fs/nandfs/nandfs_segment.c > > +++ b/sys/fs/nandfs/nandfs_segment.c > > @@ -478,39 +478,19 @@ nandfs_iterate_dirty_vnodes(struct mount *mp, =20 > > struct nandfs_seginfo *seginfo) > > struct nandfs_node *nandfs_node; > > struct vnode *vp, *mvp; > > struct thread *td; > > - int error, lockreq, update; > > + int error, update; > > td =3D curthread; > > - lockreq =3D LK_EXCLUSIVE | LK_INTERLOCK | LK_RETRY; > > - MNT_ILOCK(mp); > > - > > - MNT_VNODE_FOREACH(vp, mp, mvp) { > > + MNT_VNODE_FOREACH_ACTIVE(vp, mp, mvp) { > > update =3D 0; > > - if (mp->mnt_syncer =3D=3D vp) > > - continue; > > - if (VOP_ISLOCKED(vp)) > > - continue; > > - > > - VI_LOCK(vp); > > - MNT_IUNLOCK(mp); > > - if (vp->v_iflag & VI_DOOMED) { > > + if (mp->mnt_syncer =3D=3D vp || VOP_ISLOCKED(vp)) { > > VI_UNLOCK(vp); > > - MNT_ILOCK(mp); > > - continue; > > - } > > - > > - if ((error =3D vget(vp, lockreq, td)) !=3D 0) { > > - MNT_ILOCK(mp); > > continue; > > } > > - > > - if (vp->v_iflag & VI_DOOMED) { > > - vput(vp); > > - MNT_ILOCK(mp); > > + if (vget(vp, LK_EXCLUSIVE | LK_INTERLOCK | LK_NOWAIT, td) !=3D 0) > > continue; > > - } > > nandfs_node =3D VTON(vp); > > if (nandfs_node->nn_flags & IN_MODIFIED) { > > @@ -532,12 +512,8 @@ nandfs_iterate_dirty_vnodes(struct mount *mp, =20 > > struct nandfs_seginfo *seginfo) > > if (update) > > nandfs_node_update(nandfs_node); > > - > > - MNT_ILOCK(mp); > > } > > - MNT_IUNLOCK(mp); > > - > > return (0); > > } > > >=20 > This boots fine. I added some options from the kernel debugging handbook.= =20 > Some LORs appear. I will copy-paste them here. Yes, the LORs are genuine nandfs bugs, not caused by the change I posted. Thank you for the testing. >=20 > Trying to mount root from nandfs:/dev/gnand0s.root []... > WARNING: NANDFS is considered to be a highly experimental feature in =20 > FreeBSD. > (probe0:umass-sim0:0:0:0): Down reving Protocol Version from 2 to 0? > pass0 at umass-sim0 bus 0 scbus0 target 0 lun 0 > pass0: Removable Direct Access SCSI-0 devi= ce > pass0: Serial Number AA00000000002542 > pass0: 40.000MB/s transfers > da0 at umass-sim0 bus 0 scbus0 target 0 lun 0 > da0: Removable Direct Access SCSI-0 device > da0: Serial Number AA00000000002542 > da0: 40.000MB/s transfers > da0: 3894MB (7975296 512 byte sectors: 255H 63S/T 496C) > GEOM: new disk da0 > lock order reversal: > 1st 0xcc334d40 bufwait (bufwait) @ /usr/src/sys/kern/vfs_bio.c:1898 > 2nd 0xc3ef4a30 snandfs (snandfs) @ =20 > /usr/src/sys/fs/nandfs/nandfs_subr.c:444 > 3rd 0xcc334860 bufwait (bufwait) @ /usr/src/sys/kern/vfs_bio.c:2631 > KDB: stack backtrace: > db_trace_self() at db_trace_self+0x10 > scp=3D0xc0bb462c rlv=3D0xc09334d8 (X_db_sym_numargs+0x1bc) > rsp=3D0xd35ae3ec rfp=3D0xd35ae508 > X_db_sym_numargs() at X_db_sym_numargs+0x198 > scp=3D0xc09334b4 rlv=3D0xc0a6ed5c (kdb_backtrace+0x3c) > rsp=3D0xd35ae50c rfp=3D0xd35ae51c > r4=3D0xc0cc7838 > kdb_backtrace() at kdb_backtrace+0x10 > scp=3D0xc0a6ed30 rlv=3D0xc0a853e8 (witness_display_spinlock+0x80) > rsp=3D0xd35ae520 rfp=3D0xd35ae534 > r4=3D0x00000001 > witness_display_spinlock() at witness_display_spinlock+0x60 > scp=3D0xc0a853c8 rlv=3D0xc0a861c4 (witness_checkorder+0x8b4) > rsp=3D0xd35ae538 rfp=3D0xd35ae588 > r5=3D0xc3ef4a30 r4=3D0xc0c27690 > witness_checkorder() at witness_checkorder+0x10 > scp=3D0xc0a85920 rlv=3D0xc0a253bc (__lockmgr_args+0x828) > rsp=3D0xd35ae58c rfp=3D0xd35ae5e8 > r10=3D0x00000000 r9=3D0xc3ef4ad0 > r8=3D0x00081900 r7=3D0xc3685000 r6=3D0xcc334860 r5=3D0x00000100 > r4=3D0x00080000 > __lockmgr_args() at __lockmgr_args+0x10 > scp=3D0xc0a24ba4 rlv=3D0xc0ab9ff0 (getblk+0x128) > rsp=3D0xd35ae5ec rfp=3D0xd35ae630 > r10=3D0x00000000 r9=3D0x00000000 > r8=3D0x000002a4 r7=3D0xc3ef4ad0 r6=3D0xcc334800 r5=3D0x00000000 > r4=3D0x00000000 > getblk() at getblk+0x10 > scp=3D0xc0ab9ed8 rlv=3D0xc0aba918 (breadn_flags+0x30) > rsp=3D0xd35ae634 rfp=3D0xd35ae658 > r10=3D0xd35ae6e4 r9=3D0x0001500a > r8=3D0xc3fe8000 r7=3D0x00000000 r6=3D0xc3ef49d8 r5=3D0x00000000 > r4=3D0x00000000 > breadn_flags() at breadn_flags+0x10 > scp=3D0xc0aba8f8 rlv=3D0xc098ea58 (nandfs_bread+0x80) > rsp=3D0xd35ae65c rfp=3D0xd35ae6a0 > r6=3D0x000002a4 r5=3D0xc3fe8000 > r4=3D0x00000000 > nandfs_bread() at nandfs_bread+0x10 > scp=3D0xc098e9e8 rlv=3D0xc098efb0 (nandfs_vtop+0xfc) > rsp=3D0xd35ae6a4 rfp=3D0xd35ae710 > r10=3D0x00000000 r8=3D0xc3fe8000 > r7=3D0x00000000 r6=3D0xd35ae72c r5=3D0xc3fe7db0 r4=3D0x00000000 > nandfs_vtop() at nandfs_vtop+0x10 > scp=3D0xc098eec4 rlv=3D0xc099551c (nandfs_itimes+0x304) > rsp=3D0xd35ae714 rfp=3D0xd35ae764 > r10=3D0x00001000 r9=3D0xc3fc5000 > r8=3D0xc3fe7db0 r7=3D0x00000000 r6=3D0x00000000 r5=3D0xcc334ce0 > r4=3D0x00001000 > nandfs_itimes() at nandfs_itimes+0x228 > scp=3D0xc0995440 rlv=3D0xc0be0284 (VOP_STRATEGY_APV+0xbc) > rsp=3D0xd35ae768 rfp=3D0xd35ae780 > r10=3D0xd35ae9ec r9=3D0x00000000 > r8=3D0xc36e25c0 r7=3D0x00000000 r6=3D0xd35ae788 r5=3D0xc0c91a00 > r4=3D0xc0c42434 > VOP_STRATEGY_APV() at VOP_STRATEGY_APV+0x10 > scp=3D0xc0be01d8 rlv=3D0xc0ab47a8 (bufstrategy+0x68) > rsp=3D0xd35ae784 rfp=3D0xd35ae7a8 > r6=3D0xc3ef4870 r5=3D0xcc334ce0 > r4=3D0xc3ef4870 > bufstrategy() at bufstrategy+0x10 > scp=3D0xc0ab4750 rlv=3D0xc0abaa34 (breadn_flags+0x14c) > rsp=3D0xd35ae7ac rfp=3D0xd35ae7d0 > r5=3D0x00000000 r4=3D0xcc334ce0 > breadn_flags() at breadn_flags+0x10 > scp=3D0xc0aba8f8 rlv=3D0xc098ea58 (nandfs_bread+0x80) > rsp=3D0xd35ae7d4 rfp=3D0xd35ae818 > r6=3D0x00000000 r5=3D0xc3fe7db0 > r4=3D0x00000000 > nandfs_bread() at nandfs_bread+0x10 > scp=3D0xc098e9e8 rlv=3D0xc0993afc (nandfs_wakeup_wait_sync+0x2e0c) > rsp=3D0xd35ae81c rfp=3D0xd35aea9c > r10=3D0xc3fe7db0 r8=3D0xc36e25c0 > r7=3D0x00000000 r6=3D0xd35ae9bc r5=3D0x00000000 r4=3D0xc3fda360 > nandfs_wakeup_wait_sync() at nandfs_wakeup_wait_sync+0xc9c > scp=3D0xc099198c rlv=3D0xc0ac8390 (vfs_donmount+0x9c8) > rsp=3D0xd35aeaa0 rfp=3D0xd35aec80 > r10=3D0xd35aec84 r9=3D0x00000000 > r8=3D0xc3fe0bc0 r7=3D0x00000000 r6=3D0x00004001 r5=3D0xd35aebbc > r4=3D0x00000000 > vfs_donmount() at vfs_donmount+0x10 > scp=3D0xc0ac79d8 rlv=3D0xc0ac8ec4 (kernel_mount+0x90) > rsp=3D0xd35aec84 rfp=3D0xd35aecc4 > r10=3D0xc3fe5a00 r9=3D0x00000000 > r8=3D0x00000000 r7=3D0x00004000 r6=3D0x00000000 r5=3D0xc3fda400 > r4=3D0xffffffff > kernel_mount() at kernel_mount+0x10 > scp=3D0xc0ac8e44 rlv=3D0xc0ac99a0 (root_mount_hold+0x684) > rsp=3D0xd35aecc8 rfp=3D0xd35aecfc > r8=3D0xc36e2427 r7=3D0xc36e2420 > r6=3D0xc3fda400 r5=3D0xd35aecd0 r4=3D0xffffffff > root_mount_hold() at root_mount_hold+0x3a0 > scp=3D0xc0ac96bc rlv=3D0xc0aca734 (vfs_mountroot+0xca0) > rsp=3D0xd35aed00 rfp=3D0xd35aee2c > r10=3D0xc36e23c0 r9=3D0xc3683000 > r8=3D0xd35aeeac r7=3D0xc3fe1000 r6=3D0xc0c29240 r5=3D0x00000000 > r4=3D0x00000000 > vfs_mountroot() at vfs_mountroot+0x10 > scp=3D0xc0ac9aa4 rlv=3D0xc09f8754 (exec_shell_imgact+0x7ac) > rsp=3D0xd35aee30 rfp=3D0xd35aee84 > r10=3D0x00000000 r9=3D0xc3683000 > r8=3D0xd35aeeac r7=3D0x00000000 r6=3D0xc09f86fc r5=3D0xc0c1167c > r4=3D0xc0cb9448 > exec_shell_imgact() at exec_shell_imgact+0x764 > scp=3D0xc09f870c rlv=3D0xc0a14fd4 (fork_exit+0x98) > rsp=3D0xd35aee88 rfp=3D0xd35aeea8 > r10=3D0x00000000 r9=3D0x00000000 > r8=3D0xd35aeeac r7=3D0x00000000 r6=3D0xc09f86fc r5=3D0xc3683000 > r4=3D0xc3685000 > fork_exit() at fork_exit+0x10 > scp=3D0xc0a14f4c rlv=3D0xc0bc4ad4 (fork_trampoline+0x14) > rsp=3D0xd35aeeac rfp=3D0x00000000 > r8=3D0x00000000 r7=3D0x00000000 > r6=3D0x00000000 r5=3D0x00000000 r4=3D0xc09f86fc > after vfs_mountroot() > start_init: trying /sbin/init > sys_execve returned 0 > (da0:umass-sim0:0:0:0): PREVENT ALLOW MEDIUM REMOVAL. CDB: 1e 0 0 0 1 0 > (da0:umass-sim0:0:0:0): CAM status: Auto-Sense Retrieval Failed > (da0:umass-sim0:0:0:0): Error 5, Unretryable error > Dec 31 16:42:47 init: init started > Setting hostuuid: 64f53bc5-bfde-11d3-902f-005043016d4c. > Setting hostid: 0x2afd1481. > No suitable dump device was found. > Entropy harvesting: interrupts ethernet point_to_pointsha256: /kernel: No= =20 > such file or directory > kickstart. > Starting file system checks: > /dev/da0s2: FILE SYSTEM CLEAN; SKIPPING CHECKS > /dev/da0s2: clean, 894115 free (2531 frags, 111448 blocks, 0.3% =20 > fragmentation) > /dev/da0s1: FILESYSTEM CLEAN; SKIPPING CHECKS > lock order reversal: > 1st 0xc3ef4a30 snandfs (snandfs) @ =20 > /usr/src/sys/fs/nandfs/nandfs_segment.c:1199 > 2nd 0xc3ef4b98 devfs (devfs) @ /usr/src/sys/fs/nandfs/nandfs_segment.c:= 793 > KDB: stack backtrace: > db_trace_self() at db_trace_self+0x10 > scp=3D0xc0bb462c rlv=3D0xc09334d8 (X_db_sym_numargs+0x1bc) > rsp=3D0xd5bf8b1c rfp=3D0xd5bf8c38 > X_db_sym_numargs() at X_db_sym_numargs+0x198 > scp=3D0xc09334b4 rlv=3D0xc0a6ed5c (kdb_backtrace+0x3c) > rsp=3D0xd5bf8c3c rfp=3D0xd5bf8c4c > r4=3D0xc0cc7838 > kdb_backtrace() at kdb_backtrace+0x10 > scp=3D0xc0a6ed30 rlv=3D0xc0a853e8 (witness_display_spinlock+0x80) > rsp=3D0xd5bf8c50 rfp=3D0xd5bf8c64 > r4=3D0x00000001 > witness_display_spinlock() at witness_display_spinlock+0x60 > scp=3D0xc0a853c8 rlv=3D0xc0a861c4 (witness_checkorder+0x8b4) > rsp=3D0xd5bf8c68 rfp=3D0xd5bf8cb8 > r5=3D0xc3ef4a30 r4=3D0xc0c14ad8 > witness_checkorder() at witness_checkorder+0x10 > scp=3D0xc0a85920 rlv=3D0xc0a253bc (__lockmgr_args+0x828) > rsp=3D0xd5bf8cbc rfp=3D0xd5bf8d18 > r10=3D0xc36e2680 r9=3D0xc3ef4c04 > r8=3D0x00080000 r7=3D0xc400dc00 r6=3D0xc3ef4b98 r5=3D0x00000000 > r4=3D0x00080000 > __lockmgr_args() at __lockmgr_args+0x10 > scp=3D0xc0a24ba4 rlv=3D0xc0abfc30 (vop_stdlock+0x48) > rsp=3D0xd5bf8d1c rfp=3D0xd5bf8d38 > r10=3D0xc36e2680 r9=3D0xc4011880 > r8=3D0xc3fc5000 r7=3D0x00000001 r6=3D0x00000000 r5=3D0xd5bf8d68 > r4=3D0xc0ca4dfc > vop_stdlock() at vop_stdlock+0x10 > scp=3D0xc0abfbf8 rlv=3D0xc0be0500 (VOP_LOCK1_APV+0xa0) > rsp=3D0xd5bf8d3c rfp=3D0xd5bf8d50 > VOP_LOCK1_APV() at VOP_LOCK1_APV+0x10 > scp=3D0xc0be0470 rlv=3D0xc098b824 (nandfs_node_create+0x1994) > rsp=3D0xd5bf8d54 rfp=3D0xd5bf8da4 > r5=3D0xc4011880 r4=3D0xd5bf8e14 > nandfs_node_create() at nandfs_node_create+0x194c > scp=3D0xc098b7dc rlv=3D0xc098bb90 (nandfs_node_create+0x1d00) > rsp=3D0xd5bf8da8 rfp=3D0xd5bf8dcc > r10=3D0xc36e2680 r9=3D0xc3fc5000 > r8=3D0xc3fc5000 r7=3D0x00000001 r6=3D0x00000000 r5=3D0xc4011880 > r4=3D0xd5bf8e14 > nandfs_node_create() at nandfs_node_create+0x1c48 > scp=3D0xc098bad8 rlv=3D0xc098c354 (nandfs_segment_constructor+0x740) > rsp=3D0xd5bf8dd0 rfp=3D0xd5bf8e64 > r10=3D0xc36e2680 r8=3D0xc3fc5000 > r7=3D0xc36e2680 r6=3D0x00000000 r5=3D0x0003c9ca r4=3D0xd5bf8e14 > nandfs_segment_constructor() at nandfs_segment_constructor+0x10 > scp=3D0xc098bc24 rlv=3D0xc0990bc4 (nandfs_get_seg_stat+0x518) > rsp=3D0xd5bf8e68 rfp=3D0xd5bf8e84 > r10=3D0x00000104 r9=3D0x00000000 > r8=3D0xd5bf8eac r7=3D0xc36e25c0 r6=3D0xc3fc5000 r5=3D0xc36e25c0 > r4=3D0x00000000 > nandfs_get_seg_stat() at nandfs_get_seg_stat+0x49c > scp=3D0xc0990b48 rlv=3D0xc0a14fd4 (fork_exit+0x98) > rsp=3D0xd5bf8e88 rfp=3D0xd5bf8ea8 > r6=3D0xc0990b38 r5=3D0xc0cb74c4 > r4=3D0xc400dc00 > fork_exit() at fork_exit+0x10 > scp=3D0xc0a14f4c rlv=3D0xc0bc4ad4 (fork_trampoline+0x14) > rsp=3D0xd5bf8eac rfp=3D0x00000000 > r8=3D0xc0cb77b0 r7=3D0x00000000 > r6=3D0x00000000 r5=3D0xc36e25c0 r4=3D0xc0990b38 > Mounting local file systems:. > Writing entropy file:. > Setting hostname: sh10.klop.ws. > Starting Network: lo0 mge0. > lo0: flags=3D8049 metric 0 mtu 16384 > options=3D600003 > inet 127.0.0.1 netmask 0xff000000 > mge0: flags=3D8843 metric mge0: l= ink =20 > state changed to UP > 0 mtu 1500 > options=3D8000b > ether 00:50:43:01:6d:4c > media: Ethernet autoselect (100baseTX ) > status: active > Starting devd. > Starting dhclient. > DHCPDISCOVER on mge0 to 255.255.255.255 port 67 interval 6 > DHCPOFFER from 192.168.1.254 > DHCPREQUEST on mge0 to 255.255.255.255 port 67 > DHCPACK from 192.168.1.254 > bound to 192.168.1.35 -- renewal in 43200 seconds. > Creating and/or trimming log files. > Starting syslogd. > realpath: /dev/dumpdev: No such file or directory > /etc/rc: WARNING: Dump device does not exist. Savecore not run. > ELF ldconfig path: /lib /usr/lib /usr/lib/compat > Clearing /tmp (X related). > Updating motd:. > Starting ntpd. > Performing sanity check on sshd configuration. > Starting sshd. > Starting cron. >=20 > Mon Dec 31 16:43:48 UTC 2012 >=20 > FreeBSD/arm (sh10.klop.ws) (ttyu0) >=20 > login: >=20 >=20 > Regards, > Ronald. --1xJJiECQTZ8+YlWm Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iQIcBAEBAgAGBQJQ4csQAAoJEJDCuSvBvK1BdbUQAKAHLHj8AzpQrebU9JlZbGLG 5LbIus9Gytz/sdayIAdYU5+GStYFagbr0c9gvY4d+SmZtRyQ7gcM08Jtdq+pYlWI ANHM2wHWIVAiDEQeyNIygjUCOxwC77A+di/mNRvuQHo6rX7LCPfEYi7wUwEF3Hbv H2VUG7SgnOsIcIEbyHDW4IOVi+HMrESEuZ/ROlBOpz0MVNESblbBdFahyaoslQrk zls5K5vZPYNgzx9/9b0/0v42MlBZ9TkLopk6zKXtVGd/3nn2IRdoUhw1b9/pc5y2 pUmCUovVA4uV6oaZzFUAYNv6eV1lChA3o5lQwNfFJBDmjUp3KIvF5VaWj27Q/6eb /XQ1J4Q6ylvO1Va/j5/YAbFjoVWRZlJkIEyE7TPz5SanptBlVCAd2F03nIwkk558 +/NmIxCsg6pf3IGrg5mOXasbbjYbwA1ftsrl8czwa2rOcmUNY388VsmUIs+O97Wu 0Rb/xvNhmwZH8aLd5SvqVmzefYcoAX7IG9pRoB4If07pt01hC/HaCpY2DuSzLPjA O4OXcJ8BK+7sNJfMJdlweHHclPgLKvQKNllgRom4jEJfyUZNLPazGPqGIrRAVgEF qZElnVfSzI5COBGUT/NJ5crcO2PgwpMWa+vDtfn/+zlm9UL2a8Omi2FYpSIRzzbn xONMIUJBnSO/8rKCvpU1 =y5WL -----END PGP SIGNATURE----- --1xJJiECQTZ8+YlWm--