Merge tag 'docs-6.8-2' of git://git.lwn.net/linux
[sfrench/cifs-2.6.git] / arch / x86 / include / asm / proto.h
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
7 struct task_struct;
8
9 /* misc architecture specific prototypes */
10
11 void syscall_init(void);
12
13 #ifdef CONFIG_X86_64
14 void entry_SYSCALL_64(void);
15 void entry_SYSCALL_64_safe_stack(void);
16 void entry_SYSRETQ_unsafe_stack(void);
17 void entry_SYSRETQ_end(void);
18 long do_arch_prctl_64(struct task_struct *task, int option, unsigned long arg2);
19 #endif
20
21 #ifdef CONFIG_X86_32
22 void entry_INT80_32(void);
23 void entry_SYSENTER_32(void);
24 void __begin_SYSENTER_singlestep_region(void);
25 void __end_SYSENTER_singlestep_region(void);
26 #endif
27
28 #ifdef CONFIG_IA32_EMULATION
29 void entry_SYSENTER_compat(void);
30 void __end_entry_SYSENTER_compat(void);
31 void entry_SYSCALL_compat(void);
32 void entry_SYSCALL_compat_safe_stack(void);
33 void entry_SYSRETL_compat_unsafe_stack(void);
34 void entry_SYSRETL_compat_end(void);
35 #else /* !CONFIG_IA32_EMULATION */
36 #define entry_SYSCALL_compat NULL
37 #define entry_SYSENTER_compat NULL
38 #endif
39
40 void x86_configure_nx(void);
41
42 extern int reboot_force;
43
44 long do_arch_prctl_common(int option, unsigned long arg2);
45
46 #endif /* _ASM_X86_PROTO_H */