Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
8eb68bf7 KC |
2 | #ifndef _ASM_X86_SECCOMP_H |
3 | #define _ASM_X86_SECCOMP_H | |
4 | ||
5 | #include <asm/unistd.h> | |
6 | ||
96a388de | 7 | #ifdef CONFIG_X86_32 |
8eb68bf7 | 8 | #define __NR_seccomp_sigreturn __NR_sigreturn |
96a388de | 9 | #endif |
8eb68bf7 KC |
10 | |
11 | #ifdef CONFIG_COMPAT | |
12 | #include <asm/ia32_unistd.h> | |
13 | #define __NR_seccomp_read_32 __NR_ia32_read | |
14 | #define __NR_seccomp_write_32 __NR_ia32_write | |
15 | #define __NR_seccomp_exit_32 __NR_ia32_exit | |
16 | #define __NR_seccomp_sigreturn_32 __NR_ia32_sigreturn | |
17 | #endif | |
18 | ||
25db9120 KC |
19 | #ifdef CONFIG_X86_64 |
20 | # define SECCOMP_ARCH_NATIVE AUDIT_ARCH_X86_64 | |
21 | # define SECCOMP_ARCH_NATIVE_NR NR_syscalls | |
22 | # define SECCOMP_ARCH_NATIVE_NAME "x86_64" | |
23 | # ifdef CONFIG_COMPAT | |
24 | # define SECCOMP_ARCH_COMPAT AUDIT_ARCH_I386 | |
25 | # define SECCOMP_ARCH_COMPAT_NR IA32_NR_syscalls | |
26 | # define SECCOMP_ARCH_COMPAT_NAME "ia32" | |
27 | # endif | |
28 | /* | |
29 | * x32 will have __X32_SYSCALL_BIT set in syscall number. We don't support | |
30 | * caching them and they are treated as out of range syscalls, which will | |
31 | * always pass through the BPF filter. | |
32 | */ | |
33 | #else /* !CONFIG_X86_64 */ | |
34 | # define SECCOMP_ARCH_NATIVE AUDIT_ARCH_I386 | |
35 | # define SECCOMP_ARCH_NATIVE_NR NR_syscalls | |
36 | # define SECCOMP_ARCH_NATIVE_NAME "ia32" | |
37 | #endif | |
38 | ||
8eb68bf7 KC |
39 | #include <asm-generic/seccomp.h> |
40 | ||
41 | #endif /* _ASM_X86_SECCOMP_H */ |