This is a note to let you know that I've just added the patch titled don't bother with propagate_mnt() unless the target is shared to the 3.13-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: don-t-bother-with-propagate_mnt-unless-the-target-is-shared.patch and it can be found in the queue-3.13 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. >From 0b1b901b5a98bb36943d10820efc796f7cd45ff3 Mon Sep 17 00:00:00 2001 From: Al Viro <viro@xxxxxxxxxxxxxxxxxx> Date: Fri, 21 Mar 2014 10:14:08 -0400 Subject: don't bother with propagate_mnt() unless the target is shared From: Al Viro <viro@xxxxxxxxxxxxxxxxxx> commit 0b1b901b5a98bb36943d10820efc796f7cd45ff3 upstream. If the dest_mnt is not shared, propagate_mnt() does nothing - there's no mounts to propagate to and thus no copies to create. Might as well don't bother calling it in that case. Signed-off-by: Al Viro <viro@xxxxxxxxxxxxxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- fs/namespace.c | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) --- a/fs/namespace.c +++ b/fs/namespace.c @@ -1653,16 +1653,14 @@ static int attach_recursive_mnt(struct m err = invent_group_ids(source_mnt, true); if (err) goto out; - } - err = propagate_mnt(dest_mnt, dest_mp, source_mnt, &tree_list); - if (err) - goto out_cleanup_ids; - - lock_mount_hash(); - - if (IS_MNT_SHARED(dest_mnt)) { + err = propagate_mnt(dest_mnt, dest_mp, source_mnt, &tree_list); + if (err) + goto out_cleanup_ids; + lock_mount_hash(); for (p = source_mnt; p; p = next_mnt(p, source_mnt)) set_mnt_shared(p); + } else { + lock_mount_hash(); } if (parent_path) { detach_mnt(source_mnt, parent_path); @@ -1685,8 +1683,7 @@ static int attach_recursive_mnt(struct m return 0; out_cleanup_ids: - if (IS_MNT_SHARED(dest_mnt)) - cleanup_group_ids(source_mnt, NULL); + cleanup_group_ids(source_mnt, NULL); out: return err; } Patches currently in stable-queue which might be from viro@xxxxxxxxxxxxxxxxxx are queue-3.13/don-t-bother-with-propagate_mnt-unless-the-target-is-shared.patch queue-3.13/resizable-namespace.c-hashes.patch queue-3.13/switch-mnt_hash-to-hlist.patch queue-3.13/rcuwalk-recheck-mount_lock-after-mountpoint-crossing-attempts.patch queue-3.13/keep-shadowed-vfsmounts-together.patch queue-3.13/make-prepend_name-work-correctly-when-called-with-negative-buflen.patch -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html