From mboxrd@z Thu Jan 1 00:00:00 1970 From: Al Viro Subject: Re: Linux 2.6.26-rc4 Date: Tue, 3 Jun 2008 11:40:35 +0100 Message-ID: <20080603104035.GT28946@ZenIV.linux.org.uk> 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> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: jesper@krogh.cc, torvalds@linux-foundation.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org To: Miklos Szeredi Return-path: Received: from zeniv.linux.org.uk ([195.92.253.2]:44467 "EHLO ZenIV.linux.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752461AbYFCKki (ORCPT ); Tue, 3 Jun 2008 06:40:38 -0400 Content-Disposition: inline In-Reply-To: Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On Tue, Jun 03, 2008 at 12:13:54PM +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? Look more carefully. It's path->dentry; aside of the fact that dentry pointer is fetched at offset 8 from one of the arguments (fits path->dentry, too low for mnt->mnt_root), do_add_mount() itself has just done S_ISLNK on the very same thing, so it'd die before getting to graft_tree(). No, it's either path_lookup() somehow returning a negative dentry in do_mount() (which shouldn't be possible, unless it's some crap around return_reval in __link_path_walk()) or it's follow_down() giving us a negative dentry. Which almost certainly would've exploded prior to that...