selftests/namespaces: add listns() wrapper

Add a wrapper for the listns() system call.

Link: https://patch.msgid.link/20251029-work-namespace-nstree-listns-v4-38-2e6f823ebdc0@kernel.org
Tested-by: syzbot@syzkaller.appspotmail.com
Reviewed-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Christian Brauner <brauner@kernel.org>
This commit is contained in:
Christian Brauner
2025-10-29 13:20:51 +01:00
parent da3c02b70c
commit 158c5c786e

View File

@@ -0,0 +1,35 @@
// SPDX-License-Identifier: GPL-2.0
#include <linux/nsfs.h>
#include <linux/types.h>
#include <sys/syscall.h>
#include <unistd.h>
#ifndef __SELFTESTS_NAMESPACES_WRAPPERS_H__
#define __SELFTESTS_NAMESPACES_WRAPPERS_H__
#ifndef __NR_listns
#if defined __alpha__
#define __NR_listns 580
#elif defined _MIPS_SIM
#if _MIPS_SIM == _MIPS_SIM_ABI32 /* o32 */
#define __NR_listns 4470
#endif
#if _MIPS_SIM == _MIPS_SIM_NABI32 /* n32 */
#define __NR_listns 6470
#endif
#if _MIPS_SIM == _MIPS_SIM_ABI64 /* n64 */
#define __NR_listns 5470
#endif
#else
#define __NR_listns 470
#endif
#endif
static inline int sys_listns(const struct ns_id_req *req, __u64 *ns_ids,
size_t nr_ns_ids, unsigned int flags)
{
return syscall(__NR_listns, req, ns_ids, nr_ns_ids, flags);
}
#endif /* __SELFTESTS_NAMESPACES_WRAPPERS_H__ */