Loading arch/um/kernel/trap.c +10 −0 Original line number Diff line number Diff line Loading @@ -183,6 +183,16 @@ void fatal_sigsegv(void) os_dump_core(); } /** * segv_handler() - the SIGSEGV handler * @sig: the signal number * @unused_si: the signal info struct; unused in this handler * @regs: the ptrace register information * * The handler first extracts the faultinfo from the UML ptrace regs struct. * If the userfault did not happen in an UML userspace process, bad_segv is called. * Otherwise the signal did happen in a cloned userspace process, handle it. */ void segv_handler(int sig, struct siginfo *unused_si, struct uml_pt_regs *regs) { struct faultinfo * fi = UPT_FAULTINFO(regs); Loading Loading
arch/um/kernel/trap.c +10 −0 Original line number Diff line number Diff line Loading @@ -183,6 +183,16 @@ void fatal_sigsegv(void) os_dump_core(); } /** * segv_handler() - the SIGSEGV handler * @sig: the signal number * @unused_si: the signal info struct; unused in this handler * @regs: the ptrace register information * * The handler first extracts the faultinfo from the UML ptrace regs struct. * If the userfault did not happen in an UML userspace process, bad_segv is called. * Otherwise the signal did happen in a cloned userspace process, handle it. */ void segv_handler(int sig, struct siginfo *unused_si, struct uml_pt_regs *regs) { struct faultinfo * fi = UPT_FAULTINFO(regs); Loading