diff options
-rw-r--r-- | sys/amd64/amd64/db_interface.c | 5 | ||||
-rw-r--r-- | sys/amd64/amd64/trap.c | 8 | ||||
-rw-r--r-- | sys/i386/i386/db_interface.c | 5 | ||||
-rw-r--r-- | sys/i386/i386/trap.c | 8 | ||||
-rw-r--r-- | sys/kern/kern_shutdown.c | 6 | ||||
-rw-r--r-- | sys/kern/subr_trap.c | 8 |
6 files changed, 27 insertions, 13 deletions
diff --git a/sys/amd64/amd64/db_interface.c b/sys/amd64/amd64/db_interface.c index 0b53ed23..7f01f1d 100644 --- a/sys/amd64/amd64/db_interface.c +++ b/sys/amd64/amd64/db_interface.c @@ -23,7 +23,7 @@ * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. * - * $Id: db_interface.c,v 1.41 1998/06/08 09:23:24 dfr Exp $ + * $Id: db_interface.c,v 1.42 1998/12/14 05:34:33 dillon Exp $ */ /* @@ -295,11 +295,12 @@ db_write_bytes(addr, size, data) * Move this to machdep.c and allow it to be called if any debugger is * installed. */ +volatile int in_Debugger = 0; + void Debugger(msg) const char *msg; { - static volatile u_char in_Debugger; /* * XXX diff --git a/sys/amd64/amd64/trap.c b/sys/amd64/amd64/trap.c index 3d35483..e672368 100644 --- a/sys/amd64/amd64/trap.c +++ b/sys/amd64/amd64/trap.c @@ -35,7 +35,7 @@ * SUCH DAMAGE. * * from: @(#)trap.c 7.4 (Berkeley) 5/13/91 - * $Id: trap.c,v 1.130 1998/12/06 00:03:30 archie Exp $ + * $Id: trap.c,v 1.131 1998/12/16 15:21:50 bde Exp $ */ /* @@ -93,6 +93,10 @@ #include <machine/vm86.h> #endif +#ifdef DDB + extern int in_Debugger, debugger_on_panic; +#endif + #include "isa.h" #include "npx.h" @@ -901,7 +905,7 @@ trap_fatal(frame, eva) return; #endif #ifdef DDB - if (kdb_trap (type, 0, frame)) + if ((debugger_on_panic || in_Debugger) && kdb_trap(type, 0, frame)) return; #endif printf("trap number = %d\n", type); diff --git a/sys/i386/i386/db_interface.c b/sys/i386/i386/db_interface.c index 0b53ed23..7f01f1d 100644 --- a/sys/i386/i386/db_interface.c +++ b/sys/i386/i386/db_interface.c @@ -23,7 +23,7 @@ * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. * - * $Id: db_interface.c,v 1.41 1998/06/08 09:23:24 dfr Exp $ + * $Id: db_interface.c,v 1.42 1998/12/14 05:34:33 dillon Exp $ */ /* @@ -295,11 +295,12 @@ db_write_bytes(addr, size, data) * Move this to machdep.c and allow it to be called if any debugger is * installed. */ +volatile int in_Debugger = 0; + void Debugger(msg) const char *msg; { - static volatile u_char in_Debugger; /* * XXX diff --git a/sys/i386/i386/trap.c b/sys/i386/i386/trap.c index 3d35483..e672368 100644 --- a/sys/i386/i386/trap.c +++ b/sys/i386/i386/trap.c @@ -35,7 +35,7 @@ * SUCH DAMAGE. * * from: @(#)trap.c 7.4 (Berkeley) 5/13/91 - * $Id: trap.c,v 1.130 1998/12/06 00:03:30 archie Exp $ + * $Id: trap.c,v 1.131 1998/12/16 15:21:50 bde Exp $ */ /* @@ -93,6 +93,10 @@ #include <machine/vm86.h> #endif +#ifdef DDB + extern int in_Debugger, debugger_on_panic; +#endif + #include "isa.h" #include "npx.h" @@ -901,7 +905,7 @@ trap_fatal(frame, eva) return; #endif #ifdef DDB - if (kdb_trap (type, 0, frame)) + if ((debugger_on_panic || in_Debugger) && kdb_trap(type, 0, frame)) return; #endif printf("trap number = %d\n", type); diff --git a/sys/kern/kern_shutdown.c b/sys/kern/kern_shutdown.c index 3a2c650..4d6db41 100644 --- a/sys/kern/kern_shutdown.c +++ b/sys/kern/kern_shutdown.c @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)kern_shutdown.c 8.3 (Berkeley) 1/21/94 - * $Id: kern_shutdown.c,v 1.42 1998/11/13 22:40:37 msmith Exp $ + * $Id: kern_shutdown.c,v 1.43 1998/12/04 22:54:51 archie Exp $ */ #include "opt_ddb.h" @@ -80,9 +80,9 @@ #ifdef DDB #ifdef DDB_UNATTENDED -static int debugger_on_panic = 0; +int debugger_on_panic = 0; #else -static int debugger_on_panic = 1; +int debugger_on_panic = 1; #endif SYSCTL_INT(_debug, OID_AUTO, debugger_on_panic, CTLFLAG_RW, &debugger_on_panic, 0, ""); diff --git a/sys/kern/subr_trap.c b/sys/kern/subr_trap.c index 3d35483..e672368 100644 --- a/sys/kern/subr_trap.c +++ b/sys/kern/subr_trap.c @@ -35,7 +35,7 @@ * SUCH DAMAGE. * * from: @(#)trap.c 7.4 (Berkeley) 5/13/91 - * $Id: trap.c,v 1.130 1998/12/06 00:03:30 archie Exp $ + * $Id: trap.c,v 1.131 1998/12/16 15:21:50 bde Exp $ */ /* @@ -93,6 +93,10 @@ #include <machine/vm86.h> #endif +#ifdef DDB + extern int in_Debugger, debugger_on_panic; +#endif + #include "isa.h" #include "npx.h" @@ -901,7 +905,7 @@ trap_fatal(frame, eva) return; #endif #ifdef DDB - if (kdb_trap (type, 0, frame)) + if ((debugger_on_panic || in_Debugger) && kdb_trap(type, 0, frame)) return; #endif printf("trap number = %d\n", type); |