lkml.org 
[lkml]   [2013]   [Aug]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] vfs: allow umount to handle mountpoints without revalidating them
On Mon, 19 Aug 2013 13:35:03 -0700
Andrew Morton <akpm@linux-foundation.org> wrote:

> On Fri, 26 Jul 2013 06:23:25 -0400 Jeff Layton <jlayton@redhat.com> wrote:
>
> > Christopher reported a regression where he was unable to unmount a NFS
> > filesystem where the root had gone stale. The problem is that
> > d_revalidate handles the root of the filesystem differently from other
> > dentries, but d_weak_revalidate does not. We could simply fix this by
> > making d_weak_revalidate return success on IS_ROOT dentries, but there
> > are cases where we do want to revalidate the root of the fs.
> >
> > A umount is really a special case. We generally aren't interested in
> > anything but the dentry and vfsmount that's attached at that point. If
> > the inode turns out to be stale we just don't care since the intent is
> > to stop using it anyway.
> >
> > Try to handle this situation better by treating umount as a special
> > case in the lookup code. Have it resolve the parent using normal
> > means, and then do a lookup of the final dentry without revalidating
> > it. In most cases, the final lookup will come out of the dcache, but
> > the case where there's a trailing symlink or !LAST_NORM entry on the
> > end complicates things a bit.
> >
>
> In which kernel version did the regression occur? The patch *applies*
> to 3.8 and perhaps earlier, but we don't know which kernel versions
> actually need it.

v3.9 introduced the regression that I'm aware of (in commit
ecf3d1f1aa), but there have been problems with unmounting of stale
mountpoints for longer than that.

--
Jeff Layton <jlayton@redhat.com>


\
 
 \ /
  Last update: 2013-08-19 23:01    [W:0.060 / U:0.060 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site