Lines Matching full:regs
85 void die(struct pt_regs *regs, const char *str) in die() argument
98 show_regs(regs); in die()
99 show_stack(current, (unsigned long *)regs->regs[4], KERN_INFO); in die()
101 ret = notify_die(DIE_OOPS, str, regs, 0, trap_no(regs), SIGSEGV); in die()
116 void do_trap(struct pt_regs *regs, int signo, int code, unsigned long addr) in do_trap() argument
124 print_vma_addr(KERN_CONT " in ", instruction_pointer(regs)); in do_trap()
126 show_regs(regs); in do_trap()
132 static void do_trap_error(struct pt_regs *regs, int signo, int code, in do_trap_error() argument
135 current->thread.trap_no = trap_no(regs); in do_trap_error()
137 if (user_mode(regs)) { in do_trap_error()
138 do_trap(regs, signo, code, addr); in do_trap_error()
140 if (!fixup_exception(regs)) in do_trap_error()
141 die(regs, str); in do_trap_error()
146 asmlinkage __visible void name(struct pt_regs *regs) \
148 do_trap_error(regs, signo, code, regs->pc, "Oops - " str); \
158 asmlinkage void do_trap_misaligned(struct pt_regs *regs) in do_trap_misaligned() argument
161 csky_alignment(regs); in do_trap_misaligned()
163 current->thread.trap_no = trap_no(regs); in do_trap_misaligned()
164 do_trap_error(regs, SIGBUS, BUS_ADRALN, regs->pc, in do_trap_misaligned()
169 asmlinkage void do_trap_bkpt(struct pt_regs *regs) in do_trap_bkpt() argument
172 if (kprobe_single_step_handler(regs)) in do_trap_bkpt()
176 if (uprobe_single_step_handler(regs)) in do_trap_bkpt()
179 if (user_mode(regs)) { in do_trap_bkpt()
184 do_trap_error(regs, SIGILL, ILL_ILLTRP, regs->pc, in do_trap_bkpt()
188 asmlinkage void do_trap_illinsn(struct pt_regs *regs) in do_trap_illinsn() argument
190 current->thread.trap_no = trap_no(regs); in do_trap_illinsn()
193 if (kprobe_breakpoint_handler(regs)) in do_trap_illinsn()
197 if (uprobe_breakpoint_handler(regs)) in do_trap_illinsn()
201 if (*(uint16_t *)instruction_pointer(regs) != USR_BKPT) { in do_trap_illinsn()
207 do_trap_error(regs, SIGILL, ILL_ILLOPC, regs->pc, in do_trap_illinsn()
211 asmlinkage void do_trap_fpe(struct pt_regs *regs) in do_trap_fpe() argument
214 return fpu_fpe(regs); in do_trap_fpe()
216 do_trap_error(regs, SIGILL, ILL_ILLOPC, regs->pc, in do_trap_fpe()
221 asmlinkage void do_trap_priv(struct pt_regs *regs) in do_trap_priv() argument
224 if (user_mode(regs) && fpu_libc_helper(regs)) in do_trap_priv()
227 do_trap_error(regs, SIGILL, ILL_PRVOPC, regs->pc, in do_trap_priv()
231 asmlinkage void trap_c(struct pt_regs *regs) in trap_c() argument
233 switch (trap_no(regs)) { in trap_c()
235 do_trap_zdiv(regs); in trap_c()
238 do_trap_bkpt(regs); in trap_c()
241 do_trap_illinsn(regs); in trap_c()
245 do_trap_bkpt(regs); in trap_c()
248 do_trap_buserr(regs); in trap_c()
251 do_trap_misaligned(regs); in trap_c()
254 do_trap_fpe(regs); in trap_c()
257 do_trap_priv(regs); in trap_c()
260 do_trap_unknown(regs); in trap_c()