diff options
author | Eric W. Biederman <ebiederm@xmission.com> | 2014-10-08 10:42:57 -0700 |
---|---|---|
committer | Eric W. Biederman <ebiederm@xmission.com> | 2014-12-02 10:46:51 -0600 |
commit | 4fed655c410cc56add64c7b1f7c85c7c56066ac2 (patch) | |
tree | 12a2492809350546bb88dce594248aa27c0f4730 /fs/namespace.c | |
parent | 381cacb12c009864993a072eedcc0720315aedbd (diff) | |
download | lwn-4fed655c410cc56add64c7b1f7c85c7c56066ac2.tar.gz lwn-4fed655c410cc56add64c7b1f7c85c7c56066ac2.zip |
mnt: Clear mnt_expire during pivot_root
When inspecting the pivot_root and the current mount expiry logic I
realized that pivot_root fails to clear like mount move does.
Add the missing line in case someone does the interesting feat of
moving an expirable submount. This gives a strong guarantee that root
of the filesystem tree will never expire.
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
Diffstat (limited to 'fs/namespace.c')
-rw-r--r-- | fs/namespace.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/namespace.c b/fs/namespace.c index f87a90b98da2..fe1c77145a78 100644 --- a/fs/namespace.c +++ b/fs/namespace.c @@ -2967,6 +2967,8 @@ SYSCALL_DEFINE2(pivot_root, const char __user *, new_root, /* mount new_root on / */ attach_mnt(new_mnt, real_mount(root_parent.mnt), root_mp); touch_mnt_namespace(current->nsproxy->mnt_ns); + /* A moved mount should not expire automatically */ + list_del_init(&new_mnt->mnt_expire); unlock_mount_hash(); chroot_fs_refs(&root, &new); put_mountpoint(root_mp); |