drm/panthor: Don't add write fences to the shared BOs
[drm/drm-misc.git] / arch / x86 / include / uapi / asm / ptrace.h
blob85165c0edafc8627e8f39fb0d1e22d45945f9dc5
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef _UAPI_ASM_X86_PTRACE_H
3 #define _UAPI_ASM_X86_PTRACE_H
5 #include <linux/compiler.h> /* For __user */
6 #include <asm/ptrace-abi.h>
7 #include <asm/processor-flags.h>
10 #ifndef __ASSEMBLY__
12 #ifdef __i386__
13 /* this struct defines the way the registers are stored on the
14 stack during a system call. */
16 #ifndef __KERNEL__
18 struct pt_regs {
19 long ebx;
20 long ecx;
21 long edx;
22 long esi;
23 long edi;
24 long ebp;
25 long eax;
26 int xds;
27 int xes;
28 int xfs;
29 int xgs;
30 long orig_eax;
31 long eip;
32 int xcs;
33 long eflags;
34 long esp;
35 int xss;
38 #endif /* __KERNEL__ */
40 #else /* __i386__ */
42 #ifndef __KERNEL__
44 struct pt_regs {
46 * C ABI says these regs are callee-preserved. They aren't saved on kernel entry
47 * unless syscall needs a complete, fully filled "struct pt_regs".
49 unsigned long r15;
50 unsigned long r14;
51 unsigned long r13;
52 unsigned long r12;
53 unsigned long rbp;
54 unsigned long rbx;
55 /* These regs are callee-clobbered. Always saved on kernel entry. */
56 unsigned long r11;
57 unsigned long r10;
58 unsigned long r9;
59 unsigned long r8;
60 unsigned long rax;
61 unsigned long rcx;
62 unsigned long rdx;
63 unsigned long rsi;
64 unsigned long rdi;
66 * On syscall entry, this is syscall#. On CPU exception, this is error code.
67 * On hw interrupt, it's IRQ number:
69 unsigned long orig_rax;
70 /* Return frame for iretq */
71 unsigned long rip;
72 unsigned long cs;
73 unsigned long eflags;
74 unsigned long rsp;
75 unsigned long ss;
76 /* top of stack page */
79 #endif /* __KERNEL__ */
80 #endif /* !__i386__ */
84 #endif /* !__ASSEMBLY__ */
86 #endif /* _UAPI_ASM_X86_PTRACE_H */