| /* SPDX-License-Identifier: GPL-2.0 */ | |
| #ifndef _ASM_X86_SECCOMP_H | |
| #define _ASM_X86_SECCOMP_H | |
| #include <asm/unistd.h> | |
| #ifdef CONFIG_X86_32 | |
| #define __NR_seccomp_sigreturn __NR_sigreturn | |
| #endif | |
| #ifdef CONFIG_COMPAT | |
| #include <asm/unistd_32_ia32.h> | |
| #define __NR_seccomp_read_32 __NR_ia32_read | |
| #define __NR_seccomp_write_32 __NR_ia32_write | |
| #define __NR_seccomp_exit_32 __NR_ia32_exit | |
| #define __NR_seccomp_sigreturn_32 __NR_ia32_sigreturn | |
| #endif | |
| #ifdef CONFIG_X86_64 | |
| # define SECCOMP_ARCH_NATIVE AUDIT_ARCH_X86_64 | |
| # define SECCOMP_ARCH_NATIVE_NR NR_syscalls | |
| # define SECCOMP_ARCH_NATIVE_NAME "x86_64" | |
| # ifdef CONFIG_COMPAT | |
| # define SECCOMP_ARCH_COMPAT AUDIT_ARCH_I386 | |
| # define SECCOMP_ARCH_COMPAT_NR IA32_NR_syscalls | |
| # define SECCOMP_ARCH_COMPAT_NAME "ia32" | |
| # endif | |
| /* | |
| * x32 will have __X32_SYSCALL_BIT set in syscall number. We don't support | |
| * caching them and they are treated as out of range syscalls, which will | |
| * always pass through the BPF filter. | |
| */ | |
| #else /* !CONFIG_X86_64 */ | |
| # define SECCOMP_ARCH_NATIVE AUDIT_ARCH_I386 | |
| # define SECCOMP_ARCH_NATIVE_NR NR_syscalls | |
| # define SECCOMP_ARCH_NATIVE_NAME "ia32" | |
| #endif | |
| #include <asm-generic/seccomp.h> | |
| #endif /* _ASM_X86_SECCOMP_H */ |