Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 35709
b: refs/heads/master
c: 70e0eb8
h: refs/heads/master
i:
  35707: 12aa938
v: v3
  • Loading branch information
Jeff Dike authored and Linus Torvalds committed Sep 26, 2006
1 parent cf1c381 commit ae2beda
Show file tree
Hide file tree
Showing 7 changed files with 101 additions and 87 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: b1fc0b1f21c4082d24d1f456a846b4fa7d16a70b
refs/heads/master: 70e0eb8ef143f3729065c504177413ffe165af22
1 change: 1 addition & 0 deletions trunk/include/asm-i386/Kbuild
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ include include/asm-generic/Kbuild.asm
header-y += boot.h
header-y += debugreg.h
header-y += ldt.h
header-y += ptrace-abi.h
header-y += ucontext.h

unifdef-y += mtrr.h
Expand Down
39 changes: 39 additions & 0 deletions trunk/include/asm-i386/ptrace-abi.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
#ifndef I386_PTRACE_ABI_H
#define I386_PTRACE_ABI_H

#define EBX 0
#define ECX 1
#define EDX 2
#define ESI 3
#define EDI 4
#define EBP 5
#define EAX 6
#define DS 7
#define ES 8
#define FS 9
#define GS 10
#define ORIG_EAX 11
#define EIP 12
#define CS 13
#define EFL 14
#define UESP 15
#define SS 16
#define FRAME_SIZE 17

/* Arbitrarily choose the same ptrace numbers as used by the Sparc code. */
#define PTRACE_GETREGS 12
#define PTRACE_SETREGS 13
#define PTRACE_GETFPREGS 14
#define PTRACE_SETFPREGS 15
#define PTRACE_GETFPXREGS 18
#define PTRACE_SETFPXREGS 19

#define PTRACE_OLDSETOPTIONS 21

#define PTRACE_GET_THREAD_AREA 25
#define PTRACE_SET_THREAD_AREA 26

#define PTRACE_SYSEMU 31
#define PTRACE_SYSEMU_SINGLESTEP 32

#endif
35 changes: 1 addition & 34 deletions trunk/include/asm-i386/ptrace.h
Original file line number Diff line number Diff line change
@@ -1,24 +1,7 @@
#ifndef _I386_PTRACE_H
#define _I386_PTRACE_H

#define EBX 0
#define ECX 1
#define EDX 2
#define ESI 3
#define EDI 4
#define EBP 5
#define EAX 6
#define DS 7
#define ES 8
#define FS 9
#define GS 10
#define ORIG_EAX 11
#define EIP 12
#define CS 13
#define EFL 14
#define UESP 15
#define SS 16
#define FRAME_SIZE 17
#include <asm/ptrace-abi.h>

/* this struct defines the way the registers are stored on the
stack during a system call. */
Expand All @@ -41,22 +24,6 @@ struct pt_regs {
int xss;
};

/* Arbitrarily choose the same ptrace numbers as used by the Sparc code. */
#define PTRACE_GETREGS 12
#define PTRACE_SETREGS 13
#define PTRACE_GETFPREGS 14
#define PTRACE_SETFPREGS 15
#define PTRACE_GETFPXREGS 18
#define PTRACE_SETFPXREGS 19

#define PTRACE_OLDSETOPTIONS 21

#define PTRACE_GET_THREAD_AREA 25
#define PTRACE_SET_THREAD_AREA 26

#define PTRACE_SYSEMU 31
#define PTRACE_SYSEMU_SINGLESTEP 32

#ifdef __KERNEL__

#include <asm/vm86.h>
Expand Down
1 change: 1 addition & 0 deletions trunk/include/asm-x86_64/Kbuild
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ header-y += debugreg.h
header-y += ldt.h
header-y += msr.h
header-y += prctl.h
header-y += ptrace-abi.h
header-y += setup.h
header-y += sigcontext32.h
header-y += ucontext.h
Expand Down
51 changes: 51 additions & 0 deletions trunk/include/asm-x86_64/ptrace-abi.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
#ifndef _X86_64_PTRACE_ABI_H
#define _X86_64_PTRACE_ABI_H

#if defined(__ASSEMBLY__) || defined(__FRAME_OFFSETS)
#define R15 0
#define R14 8
#define R13 16
#define R12 24
#define RBP 32
#define RBX 40
/* arguments: interrupts/non tracing syscalls only save upto here*/
#define R11 48
#define R10 56
#define R9 64
#define R8 72
#define RAX 80
#define RCX 88
#define RDX 96
#define RSI 104
#define RDI 112
#define ORIG_RAX 120 /* = ERROR */
/* end of arguments */
/* cpu exception frame or undefined in case of fast syscall. */
#define RIP 128
#define CS 136
#define EFLAGS 144
#define RSP 152
#define SS 160
#define ARGOFFSET R11
#endif /* __ASSEMBLY__ */

/* top of stack page */
#define FRAME_SIZE 168

#define PTRACE_OLDSETOPTIONS 21

/* Arbitrarily choose the same ptrace numbers as used by the Sparc code. */
#define PTRACE_GETREGS 12
#define PTRACE_SETREGS 13
#define PTRACE_GETFPREGS 14
#define PTRACE_SETFPREGS 15
#define PTRACE_GETFPXREGS 18
#define PTRACE_SETFPXREGS 19

/* only useful for access 32bit programs */
#define PTRACE_GET_THREAD_AREA 25
#define PTRACE_SET_THREAD_AREA 26

#define PTRACE_ARCH_PRCTL 30 /* arch_prctl for child */

#endif
59 changes: 7 additions & 52 deletions trunk/include/asm-x86_64/ptrace.h
Original file line number Diff line number Diff line change
@@ -1,40 +1,9 @@
#ifndef _X86_64_PTRACE_H
#define _X86_64_PTRACE_H

#if defined(__ASSEMBLY__) || defined(__FRAME_OFFSETS)
#define R15 0
#define R14 8
#define R13 16
#define R12 24
#define RBP 32
#define RBX 40
/* arguments: interrupts/non tracing syscalls only save upto here*/
#define R11 48
#define R10 56
#define R9 64
#define R8 72
#define RAX 80
#define RCX 88
#define RDX 96
#define RSI 104
#define RDI 112
#define ORIG_RAX 120 /* = ERROR */
/* end of arguments */
/* cpu exception frame or undefined in case of fast syscall. */
#define RIP 128
#define CS 136
#define EFLAGS 144
#define RSP 152
#define SS 160
#define ARGOFFSET R11
#endif /* __ASSEMBLY__ */
#include <asm/ptrace-abi.h>

/* top of stack page */
#define FRAME_SIZE 168

#define PTRACE_OLDSETOPTIONS 21

#ifndef __ASSEMBLY__
#ifndef __ASSEMBLY__

struct pt_regs {
unsigned long r15;
Expand All @@ -45,7 +14,7 @@ struct pt_regs {
unsigned long rbx;
/* arguments: non interrupts/non tracing syscalls only save upto here*/
unsigned long r11;
unsigned long r10;
unsigned long r10;
unsigned long r9;
unsigned long r8;
unsigned long rax;
Expand All @@ -54,32 +23,18 @@ struct pt_regs {
unsigned long rsi;
unsigned long rdi;
unsigned long orig_rax;
/* end of arguments */
/* end of arguments */
/* cpu exception frame or undefined */
unsigned long rip;
unsigned long cs;
unsigned long eflags;
unsigned long rsp;
unsigned long eflags;
unsigned long rsp;
unsigned long ss;
/* top of stack page */
/* top of stack page */
};

#endif

/* Arbitrarily choose the same ptrace numbers as used by the Sparc code. */
#define PTRACE_GETREGS 12
#define PTRACE_SETREGS 13
#define PTRACE_GETFPREGS 14
#define PTRACE_SETFPREGS 15
#define PTRACE_GETFPXREGS 18
#define PTRACE_SETFPXREGS 19

/* only useful for access 32bit programs */
#define PTRACE_GET_THREAD_AREA 25
#define PTRACE_SET_THREAD_AREA 26

#define PTRACE_ARCH_PRCTL 30 /* arch_prctl for child */

#if defined(__KERNEL__) && !defined(__ASSEMBLY__)
#define user_mode(regs) (!!((regs)->cs & 3))
#define user_mode_vm(regs) user_mode(regs)
Expand Down

0 comments on commit ae2beda

Please sign in to comment.