diff options
| author | Christian Brauner <brauner@kernel.org> | 2025-09-29 11:41:16 +0200 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-10-19 16:34:07 +0200 |
| commit | 2d68f8a7379d9c61005e982600c61948d4d019bd (patch) | |
| tree | 6447395def57c558dff6fc187a702841096da399 | |
| parent | e051ab688e5d2c460503120adc6d5b7f328ab5cf (diff) | |
| download | linux-2d68f8a7379d9c61005e982600c61948d4d019bd.tar.gz linux-2d68f8a7379d9c61005e982600c61948d4d019bd.tar.bz2 linux-2d68f8a7379d9c61005e982600c61948d4d019bd.zip | |
mount: handle NULL values in mnt_ns_release()
commit 6c7ca6a02f8f9549a438a08a23c6327580ecf3d6 upstream.
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: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| -rw-r--r-- | fs/namespace.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/namespace.c b/fs/namespace.c index f5e46c2595b1..cc4926d53e7d 100644 --- a/fs/namespace.c +++ b/fs/namespace.c @@ -153,7 +153,7 @@ static void mnt_ns_release(struct mnt_namespace *ns) lockdep_assert_not_held(&mnt_ns_tree_lock); /* keep alive for {list,stat}mount() */ - if (refcount_dec_and_test(&ns->passive)) { + if (ns && refcount_dec_and_test(&ns->passive)) { put_user_ns(ns->user_ns); kfree(ns); } |
