/arch/cris/arch-v10/kernel/ |
H A D | ptrace.c | 29 inline long get_reg(struct task_struct *task, unsigned int regno) argument 35 if (regno == PT_USP) 37 else if (regno < PT_MAX) 38 return ((unsigned long *)task_pt_regs(task))[regno]; 46 inline int put_reg(struct task_struct *task, unsigned int regno, argument 49 if (regno == PT_USP) 51 else if (regno < PT_MAX) 52 ((unsigned long *)task_pt_regs(task))[regno] = data; 82 unsigned int regno = addr >> 2; local 97 if ((addr & 3) || regno > PT_MA [all...] |
/arch/um/sys-ppc/ |
H A D | ptrace.c | 4 int putreg(struct task_struct *child, unsigned long regno, argument 7 child->thread.process_regs.regs[regno >> 2] = value; 30 unsigned long getreg(struct task_struct *child, unsigned long regno) argument 34 retval &= child->thread.process_regs.regs[regno >> 2];
|
/arch/x86/include/asm/ |
H A D | debugreg.h | 20 static inline unsigned long native_get_debugreg(int regno) argument 24 switch (regno) { 49 static inline void native_set_debugreg(int regno, unsigned long value) argument 51 switch (regno) {
|
/arch/c6x/kernel/ |
H A D | ptrace.c | 33 static inline long get_reg(struct task_struct *task, int regno) argument 37 if (regno == PT_TSR || regno == PT_CSR) 40 return addr[regno]; 47 int regno, 52 if (regno != PT_TSR && regno != PT_CSR) 53 addr[regno] = data; 46 put_reg(struct task_struct *task, int regno, unsigned long data) argument
|
/arch/x86/um/ |
H A D | ptrace_64.c | 52 int putreg(struct task_struct *child, int regno, unsigned long value) argument 62 switch (regno) { 106 panic("Bad register in putreg(): %d\n", regno); 109 child->thread.regs.regs.gp[reg_offsets[regno >> 3]] = value; 132 unsigned long getreg(struct task_struct *child, int regno) argument 139 switch (regno) { 171 panic("Bad register in getreg: %d\n", regno); 173 return mask & child->thread.regs.regs.gp[reg_offsets[regno >> 3]];
|
H A D | ptrace_32.c | 72 int putreg(struct task_struct *child, int regno, unsigned long value) argument 74 regno >>= 2; 75 switch (regno) { 114 panic("Bad register in putreg() : %d\n", regno); 116 child->thread.regs.regs.gp[reg_offsets[regno]] = value; 139 unsigned long getreg(struct task_struct *child, int regno) argument 143 regno >>= 2; 144 switch (regno) { 167 panic("Bad register in getreg() : %d\n", regno); 169 return mask & child->thread.regs.regs.gp[reg_offsets[regno]]; [all...] |
/arch/cris/arch-v32/kernel/ |
H A D | ptrace.c | 29 static int put_debugreg(long pid, unsigned int regno, long data); 30 static long get_debugreg(long pid, unsigned int regno); 39 long get_reg(struct task_struct *task, unsigned int regno) argument 46 if (regno <= PT_EDA) 47 ret = ((unsigned long *)task_pt_regs(task))[regno]; 48 else if (regno == PT_USP) 50 else if (regno == PT_PPC) 52 else if (regno <= PT_MAX) 53 ret = get_debugreg(task->pid, regno); 63 int put_reg(struct task_struct *task, unsigned int regno, unsigne argument 130 unsigned int regno = addr >> 2; local 359 put_debugreg(long pid, unsigned int regno, long data) argument 431 get_debugreg(long pid, unsigned int regno) argument [all...] |
/arch/frv/kernel/ |
H A D | ptrace.c | 203 static inline long get_reg(struct task_struct *task, int regno) argument 207 if (regno < 0 || regno >= PT__END) 210 return ((unsigned long *) user)[regno]; 216 static inline int put_reg(struct task_struct *task, int regno, argument 221 if (regno < 0 || regno >= PT__END) 224 switch (regno) { 231 ((unsigned long *) user)[regno] = data; 261 int regno local [all...] |
/arch/hexagon/kernel/ |
H A D | kgdb.c | 90 char *dbg_get_reg(int regno, void *mem, struct pt_regs *regs) argument 92 if (regno >= DBG_MAX_REG_NUM || regno < 0) 96 dbg_reg_def[regno].offset)); 98 return dbg_reg_def[regno].name; 101 int dbg_set_reg(int regno, void *mem, struct pt_regs *regs) argument 103 if (regno >= DBG_MAX_REG_NUM || regno < 0) 106 *((unsigned long *) ((void *)regs + dbg_reg_def[regno].offset)) =
|
/arch/m68k/kernel/ |
H A D | ptrace.c | 74 static inline long get_reg(struct task_struct *task, int regno) argument 78 if (regno == PT_USP) 80 else if (regno < ARRAY_SIZE(regoff)) 81 addr = (unsigned long *)(task->thread.esp0 + regoff[regno]); 85 if (regno == PT_SR || regno == PT_PC) { 89 if (regno == PT_SR) 98 static inline int put_reg(struct task_struct *task, int regno, argument 103 if (regno == PT_USP) 105 else if (regno < ARRAY_SIZ 166 int regno = addr >> 2; /* temporary hack. */ local [all...] |
/arch/xtensa/kernel/ |
H A D | ptrace.c | 177 int ptrace_peekusr(struct task_struct *child, long regno, long __user *ret) argument 185 switch(regno) { 188 tmp = regs->areg[regno - REG_AR_BASE]; 192 tmp = regs->areg[regno - REG_A_BASE]; 242 int ptrace_pokeusr(struct task_struct *child, long regno, long val) argument 247 switch (regno) { 249 regs->areg[regno - REG_AR_BASE] = val; 253 regs->areg[regno - REG_A_BASE] = val;
|
/arch/alpha/kernel/ |
H A D | ptrace.c | 107 get_reg_addr(struct task_struct * task, unsigned long regno) argument 111 if (regno == 30) { 113 } else if (regno == 65) { 115 } else if (regno == 31 || regno > 65) { 119 addr = task_stack_page(task) + regoff[regno]; 128 get_reg(struct task_struct * task, unsigned long regno) argument 131 if (regno == 63) { 132 unsigned long fpcr = *get_reg_addr(task, regno); 138 return *get_reg_addr(task, regno); 145 put_reg(struct task_struct *task, unsigned long regno, unsigned long data) argument [all...] |
/arch/arc/kernel/ |
H A D | kgdb.c | 19 int regno; local 21 for (regno = 0; regno <= 26; regno++) 22 gdb_regs[_R0 + regno] = get_reg(regno, kernel_regs, cregs); 24 for (regno = 27; regno < GDB_MAX_REGS; regno++) 25 gdb_regs[regno] 42 int regno; local [all...] |
/arch/arm/kernel/ |
H A D | kgdb.c | 51 char *dbg_get_reg(int regno, void *mem, struct pt_regs *regs) argument 53 if (regno >= DBG_MAX_REG_NUM || regno < 0) 56 if (dbg_reg_def[regno].offset != -1) 57 memcpy(mem, (void *)regs + dbg_reg_def[regno].offset, 58 dbg_reg_def[regno].size); 60 memset(mem, 0, dbg_reg_def[regno].size); 61 return dbg_reg_def[regno].name; 64 int dbg_set_reg(int regno, void *mem, struct pt_regs *regs) argument 66 if (regno > 79 int regno; local [all...] |
/arch/arm64/kernel/ |
H A D | kgdb.c | 98 char *dbg_get_reg(int regno, void *mem, struct pt_regs *regs) argument 100 if (regno >= DBG_MAX_REG_NUM || regno < 0) 103 if (dbg_reg_def[regno].offset != -1) 104 memcpy(mem, (void *)regs + dbg_reg_def[regno].offset, 105 dbg_reg_def[regno].size); 107 memset(mem, 0, dbg_reg_def[regno].size); 108 return dbg_reg_def[regno].name; 111 int dbg_set_reg(int regno, void *mem, struct pt_regs *regs) argument 113 if (regno > [all...] |
H A D | ptrace.c | 1132 int regno; local 1139 regno = (is_compat_task() ? 12 : 7); 1140 saved_reg = regs->regs[regno]; 1141 regs->regs[regno] = dir; 1148 regs->regs[regno] = saved_reg;
|
/arch/blackfin/kernel/ |
H A D | ptrace.c | 40 get_reg(struct task_struct *task, unsigned long regno, argument 46 if (regno & 3 || regno > PT_LAST_PSEUDO) 49 switch (regno) { 63 if (regno < sizeof(*regs)) { 65 tmp = *(long *)(reg_ptr + regno); 77 put_reg(struct task_struct *task, unsigned long regno, unsigned long data) argument 81 if (regno & 3 || regno > PT_LAST_PSEUDO) 84 switch (regno) { [all...] |
/arch/m32r/kernel/ |
H A D | ptrace.c | 261 unsigned long regno; local 326 regno = insn & 0xf; 328 reg_offset[regno]); 334 regno = insn & 0xf; 336 reg_offset[regno]); 343 regno = insn & 0xf; 345 reg_offset[regno]);
|
/arch/mips/kernel/ |
H A D | kgdb.c | 130 int dbg_set_reg(int regno, void *mem, struct pt_regs *regs) argument 134 if (regno < 0 || regno >= DBG_MAX_REG_NUM) 137 if (dbg_reg_def[regno].offset != -1 && regno < 38) { 138 memcpy((void *)regs + dbg_reg_def[regno].offset, mem, 139 dbg_reg_def[regno].size); 140 } else if (current && dbg_reg_def[regno].offset != -1 && regno < 72) { 144 if (regno 163 dbg_get_reg(int regno, void *mem, struct pt_regs *regs) argument [all...] |
/arch/powerpc/kernel/ |
H A D | kgdb.c | 348 char *dbg_get_reg(int regno, void *mem, struct pt_regs *regs) argument 350 if (regno >= DBG_MAX_REG_NUM || regno < 0) 353 if (regno < 32 || regno >= 64) 356 memcpy(mem, (void *)regs + dbg_reg_def[regno].offset, 357 dbg_reg_def[regno].size); 359 if (regno >= 32 && regno < 64) { 363 memcpy(mem, ¤t->thread.evr[regno 374 dbg_set_reg(int regno, void *mem, struct pt_regs *regs) argument [all...] |
H A D | ptrace.c | 221 int ptrace_get_reg(struct task_struct *task, int regno, unsigned long *data) argument 226 if (regno == PT_MSR) { 231 if (regno == PT_DSCR) 234 if (regno < (sizeof(struct pt_regs) / sizeof(unsigned long))) { 235 *data = ((unsigned long *)task->thread.regs)[regno]; 245 int ptrace_put_reg(struct task_struct *task, int regno, unsigned long data) argument 250 if (regno == PT_MSR) 252 if (regno == PT_TRAP) 254 if (regno == PT_DSCR) 257 if (regno < [all...] |
/arch/tile/kernel/ |
H A D | kgdb.c | 97 char *dbg_get_reg(int regno, void *mem, struct pt_regs *regs) argument 99 if (regno >= DBG_MAX_REG_NUM || regno < 0) 102 if (dbg_reg_def[regno].offset != -1) 103 memcpy(mem, (void *)regs + dbg_reg_def[regno].offset, 104 dbg_reg_def[regno].size); 106 memset(mem, 0, dbg_reg_def[regno].size); 107 return dbg_reg_def[regno].name; 110 int dbg_set_reg(int regno, void *mem, struct pt_regs *regs) argument 112 if (regno > [all...] |
/arch/sh/kernel/ |
H A D | kgdb.c | 194 int dbg_set_reg(int regno, void *mem, struct pt_regs *regs) argument 196 if (regno < 0 || regno >= DBG_MAX_REG_NUM) 199 if (dbg_reg_def[regno].offset != -1) 200 memcpy((void *)regs + dbg_reg_def[regno].offset, mem, 201 dbg_reg_def[regno].size); 206 char *dbg_get_reg(int regno, void *mem, struct pt_regs *regs) argument 208 if (regno >= DBG_MAX_REG_NUM || regno < 0) 211 if (dbg_reg_def[regno] [all...] |
H A D | traps_64.c | 728 unsigned long regno = (opcode >> 20) & 0x3f; local 730 if (regno >= 62) 735 unsigned long regno = (opcode >> 4) & 0x3f; local 737 if (regno >= 62)
|
/arch/x86/kernel/ |
H A D | kgdb.c | 98 int dbg_set_reg(int regno, void *mem, struct pt_regs *regs) argument 102 regno == GDB_SS || regno == GDB_FS || regno == GDB_GS || 104 regno == GDB_SP || regno == GDB_ORIG_AX) 107 if (dbg_reg_def[regno].offset != -1) 108 memcpy((void *)regs + dbg_reg_def[regno].offset, mem, 109 dbg_reg_def[regno].size); 113 char *dbg_get_reg(int regno, voi argument [all...] |