]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
propagate_one(): mnt_set_mountpoint() needs mount_lock
authorAl Viro <viro@zeniv.linux.org.uk>
Mon, 27 Apr 2020 14:26:22 +0000 (10:26 -0400)
committerBen Hutchings <ben@decadent.org.uk>
Fri, 22 May 2020 20:19:11 +0000 (21:19 +0100)
commit42f443179444258caf10b7f4f9f4e75201150918
tree5019a7b39ff61c8ec55c65749d0e2f53ee27fbf4
parent172f22d527862eb5aa9dd767826f5d68562943db
propagate_one(): mnt_set_mountpoint() needs mount_lock

commit b0d3869ce9eeacbb1bbd541909beeef4126426d5 upstream.

... to protect the modification of mp->m_count done by it.  Most of
the places that modify that thing also have namespace_lock held,
but not all of them can do so, so we really need mount_lock here.
Kudos to Piotr Krysiuk <piotras@gmail.com>, who'd spotted a related
bug in pivot_root(2) (fixed unnoticed in 5.3); search for other
similar turds has caught out this one.

Cc: stable@kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Piotr Krysiuk <piotras@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
[bwh: Backported to 3.16: adjust context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
fs/pnode.c