Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756819AbYFCNfm (ORCPT ); Tue, 3 Jun 2008 09:35:42 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752574AbYFCNfd (ORCPT ); Tue, 3 Jun 2008 09:35:33 -0400 Received: from out2.smtp.messagingengine.com ([66.111.4.26]:58518 "EHLO out2.smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752211AbYFCNfc (ORCPT ); Tue, 3 Jun 2008 09:35:32 -0400 X-Greylist: delayed 312 seconds by postgrey-1.27 at vger.kernel.org; Tue, 03 Jun 2008 09:35:32 EDT X-Sasl-enc: CD9uVPjc2vlrVflxJ1Zc2m+phKi1Ne0cCCLfyoKbmHVm 1212500130 Subject: Re: Linux 2.6.26-rc4 From: Ian Kent To: Al Viro Cc: Miklos Szeredi , jesper@krogh.cc, torvalds@linux-foundation.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org In-Reply-To: <1212499870.3025.50.camel@raven.themaw.net> References: <47107.195.41.66.226.1212486572.squirrel@mail.jabbernet.dk> <20080603095713.GR28946@ZenIV.linux.org.uk> <5440.195.41.66.226.1212487482.squirrel@mail.jabbernet.dk> <20080603104814.GU28946@ZenIV.linux.org.uk> <1212499870.3025.50.camel@raven.themaw.net> Content-Type: text/plain Date: Tue, 03 Jun 2008 21:32:18 +0800 Message-Id: <1212499940.3025.51.camel@raven.themaw.net> Mime-Version: 1.0 X-Mailer: Evolution 2.12.3 (2.12.3-4.fc8) Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1456 Lines: 36 On Tue, 2008-06-03 at 21:31 +0800, Ian Kent wrote: > On Tue, 2008-06-03 at 11:48 +0100, Al Viro wrote: > > On Tue, Jun 03, 2008 at 12:37:59PM +0200, Miklos Szeredi wrote: > > > > http://www.kerneloops.org/raw.php?rawid=12419&msgid= > > > > > > > > Looks like a negative inode in S_ISDIR(mnt->mnt_root->d_inode->i_mode), > > > > which would be due to NFS not properly filling in its root dentry? > > > > > > On second thought it's S_ISDIR(path->dentry->d_inode->i_mode), which > > > means it's an autofs thing. > > > > It is path->dentry, all right, but the question is how'd it get that way. > > Look: we got that nd.path.dentry out of path_lookup() with LOOKUP_FOLLOW > > as flags. Then we'd passed it through do_new_mount() to do_add_mount() > > without changes. And went through > > /* Something was mounted here while we slept */ > > while (d_mountpoint(nd->path.dentry) && > > follow_down(&nd->path.mnt, &nd->path.dentry)) > > ; > > And this relates to previous in that a mount isn't done by autofs until > until after the directory is created, at which time the (->mkdir()) > dentry is hashed. Oh .. and made positive at the same time. > > Ian > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/