summaryrefslogtreecommitdiffstats
path: root/sys/conf
diff options
context:
space:
mode:
authormarcel <marcel@FreeBSD.org>2014-03-18 23:51:34 +0000
committermarcel <marcel@FreeBSD.org>2014-03-18 23:51:34 +0000
commit2a451c287a9a19c38767195e2e6977a6fa289ec7 (patch)
tree4c07fabcbd2ddf56761a2d7fbb01256c2ea49875 /sys/conf
parentbd27130916a9110b8c069566b0d8213d68ae4f9b (diff)
downloadFreeBSD-src-2a451c287a9a19c38767195e2e6977a6fa289ec7.zip
FreeBSD-src-2a451c287a9a19c38767195e2e6977a6fa289ec7.tar.gz
Fix and improve exception tracing:
1. Name the kernel option XTRACE instead of EXCEPTION_TRACING 2. Put support functions in ia64/ia64/xtrace.c 3. Make it work with SMP by giving each CPU its own buffer 4. Save 16 key registers in the buffer for every exception 5. In ia64_handle_intr() and trap() transfer the trace record to the KTR trace buffer using CTRx() and with some basic information for now 6. Use a tunable to anble tracing and stop tracing as soon as we enter the debugger Room for improvements: 1. Transferring exception-relevant information to KTR 2. Add a sysctl to enable/disable tracing
Diffstat (limited to 'sys/conf')
-rw-r--r--sys/conf/files.ia641
-rw-r--r--sys/conf/options.ia642
2 files changed, 2 insertions, 1 deletions
diff --git a/sys/conf/files.ia64 b/sys/conf/files.ia64
index 81563fb..71b6232 100644
--- a/sys/conf/files.ia64
+++ b/sys/conf/files.ia64
@@ -110,6 +110,7 @@ ia64/ia64/uma_machdep.c standard
ia64/ia64/unaligned.c standard
ia64/ia64/unwind.c standard
ia64/ia64/vm_machdep.c standard
+ia64/ia64/xtrace.c optional xtrace
ia64/isa/isa.c optional isa
ia64/isa/isa_dma.c optional isa
ia64/pci/pci_cfgreg.c optional pci
diff --git a/sys/conf/options.ia64 b/sys/conf/options.ia64
index 750aeca..e5ef143 100644
--- a/sys/conf/options.ia64
+++ b/sys/conf/options.ia64
@@ -13,7 +13,7 @@ COMPAT_FREEBSD32 opt_compat.h
PV_STATS opt_pmap.h
-EXCEPTION_TRACING opt_xtrace.h
+XTRACE
VGA_ALT_SEQACCESS opt_vga.h
VGA_DEBUG opt_vga.h
OpenPOWER on IntegriCloud