1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef _ASM_X86_PROTO_H
3#define _ASM_X86_PROTO_H
4
5#include <asm/ldt.h>
6
7struct task_struct;
8
9/* misc architecture specific prototypes */
10
11void syscall_init(void);
12
13#ifdef CONFIG_X86_64
14void entry_SYSCALL_64(void);
15void entry_SYSCALL_64_safe_stack(void);
16long do_arch_prctl_64(struct task_struct *task, int option, unsigned long arg2);
17#endif
18
19#ifdef CONFIG_X86_32
20void entry_INT80_32(void);
21void entry_SYSENTER_32(void);
22void __begin_SYSENTER_singlestep_region(void);
23void __end_SYSENTER_singlestep_region(void);
24#endif
25
26#ifdef CONFIG_IA32_EMULATION
27void entry_SYSENTER_compat(void);
28void __end_entry_SYSENTER_compat(void);
29void entry_SYSCALL_compat(void);
30void entry_SYSCALL_compat_safe_stack(void);
31void entry_INT80_compat(void);
32#ifdef CONFIG_XEN_PV
33void xen_entry_INT80_compat(void);
34#endif
35#endif
36
37void x86_configure_nx(void);
38void x86_report_nx(void);
39
40extern int reboot_force;
41
42long do_arch_prctl_common(struct task_struct *task, int option,
43			  unsigned long cpuid_enabled);
44
45#endif /* _ASM_X86_PROTO_H */
46