lkml.org 
[lkml]   [2014]   [Feb]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 0/11] Detaching mounts on unlink
On Sat, Feb 15, 2014 at 01:34:43PM -0800, Eric W. Biederman wrote:
>
> The last round of this patchset the semantics of dropping mounts on
> unlink were agreed upon so long as we preserve the current semantics in
> a single mount namespace.
>
> There are two big changes with this version of the patchset.
> 1) The test for a mount in the current mount namespace has been
> rewritten so that it is actually correct and is now a drop in
> replacement for d_mountpoint. Removing the need for code changes
> that could cause unitended regressions.
>
> 2) This work has been comprehensivly extend to d_revalidate and
> d_invalidate allowing some long standing bugs to be fixed at the end
> of this patch series.
>
> In net this should result in a kernel that is more comprehensible and
> maintainble as well as fixing some possible mount leaks, and removing
> the possibility of DOS attacks from evily placed mount points, in other
> mount namespaces.

This patchset looks good to me. You can add

Reviewed-by: Miklos Szeredi <miklos@szeredi.hu>

Thanks,
Miklos

>
> Eric W. Biederman (11):
> vfs: Document the effect of d_revalidate on d_find_alias
> vfs: More precise tests in d_invalidate
> vfs: Don't allow overwriting mounts in the current mount namespace
> vfs: Keep a list of mounts on a mount point
> vfs: Add a function to lazily unmount all mounts from any dentry.
> vfs: Lazily remove mounts on unlinked files and directories.
> vfs: Remove unnecessary calls of check_submounts_and_drop
> vfs: Merge check_submounts_and_drop and d_invalidate
> vfs: Make d_invalidate return void
> vfs: Remove d_drop calls from d_revalidate implementations
> proc: Update proc_flush_task_mnt to use d_invalidate
>
> fs/afs/dir.c | 5 --
> fs/btrfs/ioctl.c | 5 +--
> fs/ceph/dir.c | 1 -
> fs/cifs/readdir.c | 6 +--
> fs/dcache.c | 140 +++++++++++++++++-------------------------------
> fs/fuse/dir.c | 7 +--
> fs/gfs2/dentry.c | 3 -
> fs/kernfs/dir.c | 11 ----
> fs/mount.h | 13 +++++
> fs/namei.c | 28 ++++++----
> fs/namespace.c | 80 +++++++++++++++++++++++++++
> fs/nfs/dir.c | 7 +--
> fs/proc/base.c | 10 +---
> fs/proc/fd.c | 2 -
> include/linux/dcache.h | 3 +-
> 15 files changed, 167 insertions(+), 154 deletions(-)
>
> Eric


\
 
 \ /
  Last update: 2014-02-18 19:21    [W:0.503 / U:0.108 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site