From owner-freebsd-stable@FreeBSD.ORG Tue Nov 16 10:27:59 2010 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 86E86106566B for ; Tue, 16 Nov 2010 10:27:59 +0000 (UTC) (envelope-from danny@cs.huji.ac.il) Received: from kabab.cs.huji.ac.il (kabab.cs.huji.ac.il [132.65.16.84]) by mx1.freebsd.org (Postfix) with ESMTP id 3487C8FC17 for ; Tue, 16 Nov 2010 10:27:59 +0000 (UTC) Received: from pampa.cs.huji.ac.il ([132.65.80.32]) by kabab.cs.huji.ac.il with esmtp id 1PIIlY-000Npn-Io; Tue, 16 Nov 2010 12:27:56 +0200 X-Mailer: exmh version 2.7.2 01/07/2005 with nmh-1.2 To: Andriy Gapon In-reply-to: <4CD532EB.1050008@freebsd.org> References: <1984713101.142889.1288963447940.JavaMail.root@erie.cs.uoguelph.ca> <20101105212757.GG2392@deviant.kiev.zoral.com.ua> <4CD532EB.1050008@freebsd.org> Comments: In-reply-to Andriy Gapon message dated "Sat, 06 Nov 2010 12:50:19 +0200." Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Tue, 16 Nov 2010 12:27:55 +0200 From: Daniel Braniss Message-ID: Cc: Rick Macklem , freebsd-stable@freebsd.org, jhb@freebsd.org, Josh Carroll , Kostik Belousov Subject: Re: NFS deadlock (unkillable nfsd and no mounts work) X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Nov 2010 10:27:59 -0000 > on 05/11/2010 23:27 Kostik Belousov said the following: > > I agree that the fix a right fix for real issue. It should only > > affect the filesystems that do support VFS_VGET(). In other words, > > it is relevant for e.g. UFS exports, but not for ZFS, that is the > > Andrey case. > > Actually ZFS does implement vfs_vget, but with a special quirk for .zfs/ and > stuff under it: > > static int > zfs_vget(vfs_t *vfsp, ino_t ino, int flags, vnode_t **vpp) > { > zfsvfs_t *zfsvfs = vfsp->vfs_data; > znode_t *zp; > int err; > > /* > * zfs_zget() can't operate on virtual entires like .zfs/ or ************************************************ entries ************************ =============================================================================== == > * .zfs/snapshot/ directories, that's why we return EOPNOTSUPP. > * This will make NFS to switch to LOOKUP instead of using VGET. > */ > if (ino == ZFSCTL_INO_ROOT || ino == ZFSCTL_INO_SNAPDIR) > return (EOPNOTSUPP); > ... > ... > > > -- > Andriy Gapon > _______________________________________________ > freebsd-stable@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-stable > To unsubscribe, send any mail to "freebsd-stable-unsubscribe@freebsd.org" >