summaryrefslogtreecommitdiff
path: root/fs/namespace.c
diff options
context:
space:
mode:
authorChristian Brauner <brauner@kernel.org>2025-09-29 11:41:16 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-10-19 16:37:44 +0200
commit99ae3e70a293834d0274c46a37120c71a24a4995 (patch)
tree4bf79584f6f7afb2793c583f85a2bf8d774e0b1c /fs/namespace.c
parentbf0fbf5e8b0aff8a4a0fb35e32b10083baa83c04 (diff)
downloadlinux-99ae3e70a293834d0274c46a37120c71a24a4995.tar.gz
linux-99ae3e70a293834d0274c46a37120c71a24a4995.tar.bz2
linux-99ae3e70a293834d0274c46a37120c71a24a4995.zip
mount: handle NULL values in mnt_ns_release()
[ Upstream commit 6c7ca6a02f8f9549a438a08a23c6327580ecf3d6 ] When calling in listmount() mnt_ns_release() may be passed a NULL pointer. Handle that case gracefully. Signed-off-by: Christian Brauner <brauner@kernel.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'fs/namespace.c')
-rw-r--r--fs/namespace.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/namespace.c b/fs/namespace.c
index fc4cbbefa70e..c8c2376bb242 100644
--- a/fs/namespace.c
+++ b/fs/namespace.c
@@ -180,7 +180,7 @@ static void mnt_ns_tree_add(struct mnt_namespace *ns)
static void mnt_ns_release(struct mnt_namespace *ns)
{
/* keep alive for {list,stat}mount() */
- if (refcount_dec_and_test(&ns->passive)) {
+ if (ns && refcount_dec_and_test(&ns->passive)) {
fsnotify_mntns_delete(ns);
put_user_ns(ns->user_ns);
kfree(ns);