]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
ipc: create_ipc_ns: drop mqueue mount on sysctl setup failure
authorVlad Kulikov <vlad.kulikov.c@gmail.com>
Tue, 21 Oct 2025 18:13:39 +0000 (21:13 +0300)
committerAndrew Morton <akpm@linux-foundation.org>
Wed, 12 Nov 2025 18:00:15 +0000 (10:00 -0800)
commit7229d74e5e8c1f140529d405c88d4493e37ce4e3
tree8a36cc07dc2b798b10c6f7cc3ac6fc6c31147e2d
parentaa5b6a72ccd9fad2d2ed875631f6aca6b0633d80
ipc: create_ipc_ns: drop mqueue mount on sysctl setup failure

If setup_mq_sysctls(ns) fails after mq_init_ns(ns) succeeds, the error
path skipped releasing the internal kernel mqueue mount kept in
ns->mq_mnt. That leaves the vfsmount/superblock referenced until final
namespace teardown, i.e. a resource leak on this rare failure edge.

Unwind it by calling mntput(ns->mq_mnt) before dropping user_ns and
freeing the IPC namespace. This mirrors the normal ordering used in
free_ipc_ns().

Link: https://lkml.kernel.org/r/20251021181341.670297-1-vlad_kulikov_c@pm.me
Signed-off-by: Vlad Kulikov <vlad_kulikov_c@pm.me>
Reviewed-by: Jan Kara <jack@suse.cz>
Cc: Aleksa Sarai <cyphar@cyphar.com>
Cc: Christian Brauner <brauner@kernel.org>
Cc: David Hildenbrand <david@redhat.com>
Cc: Ma Wupeng <mawupeng1@huawei.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
ipc/namespace.c