summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormickey <mickey@openbsd.org>2000-01-01 22:54:55 +0000
committermickey <mickey@openbsd.org>2000-01-01 22:54:55 +0000
commitecc0c97d05d1dfb35c65c6a0ee71c9d9455183fd (patch)
tree69e05e4b0e1b6c257cd57008125112670c98f08f
parentprocess sysctl.conf way earlier (diff)
downloadwireguard-openbsd-ecc0c97d05d1dfb35c65c6a0ee71c9d9455183fd.tar.xz
wireguard-openbsd-ecc0c97d05d1dfb35c65c6a0ee71c9d9455183fd.zip
do stop in kdb_trap() based on db_panic value
-rw-r--r--sys/arch/hppa/hppa/db_interface.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/sys/arch/hppa/hppa/db_interface.c b/sys/arch/hppa/hppa/db_interface.c
index cf2925aa54f..375d1b09e54 100644
--- a/sys/arch/hppa/hppa/db_interface.c
+++ b/sys/arch/hppa/hppa/db_interface.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: db_interface.c,v 1.9 1999/11/16 17:08:53 mickey Exp $ */
+/* $OpenBSD: db_interface.c,v 1.10 2000/01/01 22:54:55 mickey Exp $ */
/*
* Copyright (c) 1999 Michael Shalayeff
@@ -189,6 +189,22 @@ kdb_trap(type, code, regs)
{
int s;
+ switch (type) {
+ case T_IBREAK:
+ case T_DBREAK:
+ case -1:
+ break;
+ default:
+ if (!db_panic)
+ return (0);
+
+ kdbprinttrap(type, code);
+ if (db_recover != 0) {
+ db_error("Caught exception in DDB; continuing...\n");
+ /* NOT REACHED */
+ }
+ }
+
/* XXX Should switch to kdb`s own stack here. */
ddb_regs = *regs;