From owner-freebsd-bugs@FreeBSD.ORG Wed Dec 27 16:20:25 2006 Return-Path: X-Original-To: freebsd-bugs@hub.freebsd.org Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 21A2216A40F for ; Wed, 27 Dec 2006 16:20:25 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id C357A13C475 for ; Wed, 27 Dec 2006 16:20:24 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id kBRGKOHj057747 for ; Wed, 27 Dec 2006 16:20:24 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id kBRGKOrM057746; Wed, 27 Dec 2006 16:20:24 GMT (envelope-from gnats) Date: Wed, 27 Dec 2006 16:20:24 GMT Message-Id: <200612271620.kBRGKOrM057746@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org From: Kostik Belousov Cc: Subject: Re: kern/92785: Using exported filesystem on OS/2 NFS client causes filesystem freeze X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Kostik Belousov List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Dec 2006 16:20:25 -0000 The following reply was made to PR kern/92785; it has been noted by GNATS. From: Kostik Belousov To: Ulrich Spoerlein Cc: bug-followup@freebsd.org, Bruce Evans Subject: Re: kern/92785: Using exported filesystem on OS/2 NFS client causes filesystem freeze Date: Wed, 27 Dec 2006 18:17:07 +0200 --1Dvf9Qz7hFaodvwE Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Wed, Dec 27, 2006 at 05:05:00PM +0100, Ulrich Spoerlein wrote: > Attached is the cumulative diff of the kernel I tested this with. > Tested filesystems needing patch: ufs, msdosfs, cd9660, ext2fs > Tested filesystems sans patch: reiserfs > Untested filesystems: udf, ntfs, smbfs, nwfs, (zfs?) The better change for UDF: Index: fs/udf/udf_vnops.c =================================================================== RCS file: /usr/local/arch/ncvs/src/sys/fs/udf/udf_vnops.c,v retrieving revision 1.61 diff -u -r1.61 udf_vnops.c --- fs/udf/udf_vnops.c 3 Feb 2006 15:25:52 -0000 1.61 +++ fs/udf/udf_vnops.c 27 Dec 2006 16:16:51 -0000 @@ -915,7 +915,7 @@ if (flags & ISDOTDOT) VOP_UNLOCK(dvp, 0, a->a_cnp->cn_thread); error = udf_vget(udfmp->im_mountp, id, LK_EXCLUSIVE, &tdp); - if (flags & ISDOTDOT) + if ((flags & ISDOTDOT) && (dvp != tdp || error)) vn_lock(dvp, LK_EXCLUSIVE|LK_RETRY, a->a_cnp->cn_thread); if (!error) { /* --1Dvf9Qz7hFaodvwE Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (FreeBSD) iD8DBQFFkpyDC3+MBN1Mb4gRAvrRAJ9gle9FlZjtWW/HwO7B+/H0D9prKQCgknms p+CM6dkPOX7AF8Aq0aOhZOQ= =1sbA -----END PGP SIGNATURE----- --1Dvf9Qz7hFaodvwE--