From owner-freebsd-fs@FreeBSD.ORG Sun Jul 21 07:11:28 2013 Return-Path: Delivered-To: freebsd-fs@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id ABA72913; Sun, 21 Jul 2013 07:11:28 +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 240587C6; Sun, 21 Jul 2013 07:11:27 +0000 (UTC) Received: from tom.home (kostik@localhost [127.0.0.1]) by kib.kiev.ua (8.14.7/8.14.7) with ESMTP id r6L7BOoD001440; Sun, 21 Jul 2013 10:11:24 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.8.3 kib.kiev.ua r6L7BOoD001440 Received: (from kostik@localhost) by tom.home (8.14.7/8.14.7/Submit) id r6L7BOQF001439; Sun, 21 Jul 2013 10:11:24 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Sun, 21 Jul 2013 10:11:24 +0300 From: Konstantin Belousov To: Andriy Gapon Subject: Re: Deadlock in nullfs/zfs somewhere Message-ID: <20130721071124.GY5991@kib.kiev.ua> References: <51E7B686.4090509@FreeBSD.org> <20130718112814.GA5991@kib.kiev.ua> <51E7F05A.5020609@FreeBSD.org> <20130718185215.GE5991@kib.kiev.ua> <51E91277.3070309@FreeBSD.org> <20130719103025.GJ5991@kib.kiev.ua> <51E95CDD.7030702@FreeBSD.org> <20130719184243.GM5991@kib.kiev.ua> <51E99477.1030308@FreeBSD.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="YDTWxoC2E3hrC6hC" Content-Disposition: inline In-Reply-To: <51E99477.1030308@FreeBSD.org> 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: 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, 21 Jul 2013 07:11:28 -0000 --YDTWxoC2E3hrC6hC Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Jul 19, 2013 at 10:33:11PM +0300, Andriy Gapon wrote: > on 19/07/2013 21:42 Konstantin Belousov said the following: > > Then, you cannot use VFS suspension. Or, in other words, you are direc= ted > > to abuse the VFS interface. I assure you that any changes to the inter= face > > would not take into account such abuse and probably break your hack. >=20 > So what would be your recommendation about this problem? > Should we add another flavor of VFS suspension? > The one that would mean "all external accesses to this fs must be put on = hold", > but would not imply "this fs is frozen". Suspension is very complicated as it is. Adding another flavour would multiply the current mess^H^H^H^H collection of subtleties. IMO, the best route is to use the KPI properly, i.e. adding the vn_start_write() braces around the top-level entries in the mutating code paths. --YDTWxoC2E3hrC6hC Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (FreeBSD) iQIcBAEBAgAGBQJR64mcAAoJEJDCuSvBvK1BPpgP/05QbPS6lUQ+FEpuwUx7WyBl ZpnCHn2NmkncxS0CslgHxK2BvdsG11pRByk2Q9pw1BcqIarudf0K9emnNNC5erZs jdkYJIJgXHFwfrJsPP+TZbt6NPoPy27qsRtO1SQ+dvYF29ia+K5GZEB17ABrU3wZ TZkJZBH5fF96TFgb/epGD32V5a+s9cVahBrTHvbldFR1fLCMopXFk/SchuHkOsa+ R8Nr7Vg9zxfHKx91a/QUDJkbK7W+dpYphBaXT/wNQ5D8XISPBzKA115wsoJbXjMx ytPsHAugd9w2+tUJNTIHzJ9LGAPNdXdAzxESncERytDbccNm3s/tdjPlH1aCgjVt OrVAJY0p+XkPcAGpANiGpHGKUHsy3M7H4TDbCu+bV1Jnb25dpAf0GTuCoSiELaKr teMPld/vi4qqNUE77yvS20xbybCiCHH3Wwz/J3dGopjkycxdq6wCK+1Zv7N1uv1c 5rNGvezXQv6kL7fD/hTLS5EvvAsFsRsb1ZABeJfU9H1qOur66/A1J4gJs9y969I8 RE8Te2aKP7ETHMUsL70RZPaSywqjZNMt1BcJWFOJNkeui/so55W1+2k4t3AfDoSs jbZcibwKAE6OGb46w+PFLNPKWFfNWk7cU8MWSYwane9YuMdzQakTG+5YBP/8O6KY a12tyQ+ZH88pJFF6CZ/z =Y0Y6 -----END PGP SIGNATURE----- --YDTWxoC2E3hrC6hC--