summaryrefslogtreecommitdiff
path: root/i386
diff options
context:
space:
mode:
authorJustus Winter <justus@gnupg.org>2017-04-02 00:13:56 +0200
committerJustus Winter <justus@gnupg.org>2017-08-05 17:08:36 +0200
commite8b45fe8b5c6801f60e2825d09a2bda22e80372a (patch)
tree3a2c1ebf8d9e5deb402f491776f9617ca4b6a4cc /i386
parentc9f2f450f92528f04ee00ead0a3fd79b475f2d2c (diff)
ddb: debug traps and port references
* ddb/db_command.c (db_debug_all_traps_cmd): New declaration and function. (db_debug_port_references_cmd): Likewise. * doc/mach.texi: Describe new commands. * i386/i386/db_interface.h (db_debug_all_traps): New declaration. * i386/i386/trap.c (db_debug_all_traps): New function. * ipc/mach_port.c (db_debug_port_references): New function. * ipc/mach_port.h (db_debug_port_references): New declaration.
Diffstat (limited to 'i386')
-rw-r--r--i386/i386/db_interface.h2
-rw-r--r--i386/i386/trap.c10
2 files changed, 12 insertions, 0 deletions
diff --git a/i386/i386/db_interface.h b/i386/i386/db_interface.h
index 8d7daeae..9ffb6a60 100644
--- a/i386/i386/db_interface.h
+++ b/i386/i386/db_interface.h
@@ -129,4 +129,6 @@ db_write_bytes_user_space(
char *data,
task_t task);
+void db_debug_all_traps (boolean_t enable);
+
#endif /* _I386_DB_INTERFACE_H_ */
diff --git a/i386/i386/trap.c b/i386/i386/trap.c
index d4bdc7f2..d3f61314 100644
--- a/i386/i386/trap.c
+++ b/i386/i386/trap.c
@@ -626,3 +626,13 @@ interrupted_pc(t)
return iss->eip;
}
#endif /* MACH_PCSAMPLE > 0 */
+
+#if MACH_KDB
+
+void
+db_debug_all_traps (boolean_t enable)
+{
+ debug_all_traps_with_kdb = enable;
+}
+
+#endif /* MACH_KDB */