Date: Sun, 16 Mar 2008 21:16:29 GMT From: John Birrell <jb@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 137866 for review Message-ID: <200803162116.m2GLGTtn063350@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=137866 Change 137866 by jb@jb_freebsd8 on 2008/03/16 21:15:35 Handle double traps on amd64 the same was as on i386 so that the double trap details are printed correctly and we end up in ddb rather than just rebooting. Affected files ... .. //depot/projects/dtrace/src/sys/amd64/amd64/trap.c#23 edit Differences ... ==== //depot/projects/dtrace/src/sys/amd64/amd64/trap.c#23 (text+ko) ==== @@ -105,6 +105,8 @@ */ dtrace_trap_func_t dtrace_trap_func; +dtrace_doubletrap_func_t dtrace_doubletrap_func; + /* * This is a hook which is initialised by the systrace module * when it is loaded. This keeps the DTrace syscall provider @@ -771,6 +773,10 @@ void dblfault_handler(struct trapframe *frame) { +#ifdef KDTRACE_HOOKS + if (dtrace_doubletrap_func != NULL) + (*dtrace_doubletrap_func)(); +#endif printf("\nFatal double fault\n"); printf("rip = 0x%lx\n", frame->tf_rip); printf("rsp = 0x%lx\n", frame->tf_rsp);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200803162116.m2GLGTtn063350>