|
|
@ -3,52 +3,17 @@ |
|
|
|
|
|
|
|
|
struct user_fpregs_struct |
|
|
struct user_fpregs_struct |
|
|
{ |
|
|
{ |
|
|
long int cwd; |
|
|
uint16_t cwd, swd, ftw, fop; |
|
|
long int swd; |
|
|
uint64_t rip, rdp; |
|
|
long int twd; |
|
|
uint32_t mxcsr, mxcs_mask; |
|
|
long int fip; |
|
|
uint32_t st_space[32], xmm_space[64], padding[24]; |
|
|
long int fcs; |
|
|
|
|
|
long int foo; |
|
|
|
|
|
long int fos; |
|
|
|
|
|
long int st_space[20]; |
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
struct user_fpxregs_struct |
|
|
|
|
|
{ |
|
|
|
|
|
unsigned short int cwd; |
|
|
|
|
|
unsigned short int swd; |
|
|
|
|
|
unsigned short int twd; |
|
|
|
|
|
unsigned short int fop; |
|
|
|
|
|
long int fip; |
|
|
|
|
|
long int fcs; |
|
|
|
|
|
long int foo; |
|
|
|
|
|
long int fos; |
|
|
|
|
|
long int mxcsr; |
|
|
|
|
|
long int reserved; |
|
|
|
|
|
long int st_space[32]; |
|
|
|
|
|
long int xmm_space[32]; |
|
|
|
|
|
long int padding[56]; |
|
|
|
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
struct user_regs_struct |
|
|
struct user_regs_struct |
|
|
{ |
|
|
{ |
|
|
long int ebx; |
|
|
unsigned long r15, r14, r13, r12, rbp, rbx, r11, r10, r9, r8; |
|
|
long int ecx; |
|
|
unsigned long rax, rcx, rdx, rsi, rdi, orig_rax, rip; |
|
|
long int edx; |
|
|
unsigned long cs, eflags, rsp, ss, fs_base, gs_base, ds, es, fs, gs; |
|
|
long int esi; |
|
|
|
|
|
long int edi; |
|
|
|
|
|
long int ebp; |
|
|
|
|
|
long int eax; |
|
|
|
|
|
long int xds; |
|
|
|
|
|
long int xes; |
|
|
|
|
|
long int xfs; |
|
|
|
|
|
long int xgs; |
|
|
|
|
|
long int orig_eax; |
|
|
|
|
|
long int eip; |
|
|
|
|
|
long int xcs; |
|
|
|
|
|
long int eflags; |
|
|
|
|
|
long int esp; |
|
|
|
|
|
long int xss; |
|
|
|
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
struct user |
|
|
struct user |
|
|
@ -56,18 +21,18 @@ struct user |
|
|
struct user_regs_struct regs; |
|
|
struct user_regs_struct regs; |
|
|
int u_fpvalid; |
|
|
int u_fpvalid; |
|
|
struct user_fpregs_struct i387; |
|
|
struct user_fpregs_struct i387; |
|
|
unsigned long int u_tsize; |
|
|
unsigned long u_tsize; |
|
|
unsigned long int u_dsize; |
|
|
unsigned long u_dsize; |
|
|
unsigned long int u_ssize; |
|
|
unsigned long u_ssize; |
|
|
unsigned long start_code; |
|
|
unsigned long start_code; |
|
|
unsigned long start_stack; |
|
|
unsigned long start_stack; |
|
|
long int signal; |
|
|
long signal; |
|
|
int reserved; |
|
|
int reserved; |
|
|
struct user_regs_struct *u_ar0; |
|
|
struct user_regs_struct *u_ar0; |
|
|
struct user_fpregs_struct *u_fpstate; |
|
|
struct user_fpregs_struct *u_fpstate; |
|
|
unsigned long int magic; |
|
|
unsigned long magic; |
|
|
char u_comm[32]; |
|
|
char u_comm[32]; |
|
|
int u_debugreg[8]; |
|
|
unsigned long u_debugreg[8]; |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
#define PAGE_MASK (~(PAGE_SIZE-1)) |
|
|
#define PAGE_MASK (~(PAGE_SIZE-1)) |
|
|
|