]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
ns: make sure reference are dropped outside of rcu lock
authorChristian Brauner <brauner@kernel.org>
Sun, 9 Nov 2025 21:11:24 +0000 (22:11 +0100)
committerChristian Brauner <brauner@kernel.org>
Mon, 10 Nov 2025 09:20:53 +0000 (10:20 +0100)
commit2ec2aff3c8e2523f3bde90e78031bae811335f3c
treed151c1cc662695ad0db6ce4b6b04748431befa76
parent7cd3d204412b0584df38fd7be20002137f34721a
ns: make sure reference are dropped outside of rcu lock

The mount namespace may in fact sleep when putting the last passive
reference so we need to drop the namespace reference outside of the rcu
read lock. Do this by delaying the put until the next iteration where
we've already moved on to the next namespace and legitimized it. Once we
drop the rcu read lock to call put_user() we will also drop the
reference to the previous namespace in the tree.

Link: https://patch.msgid.link/20251109-namespace-6-19-fixes-v1-3-ae8a4ad5a3b3@kernel.org
Fixes: 76b6f5dfb3fd ("nstree: add listns()")
Signed-off-by: Christian Brauner <brauner@kernel.org>
kernel/nstree.c