summaryrefslogtreecommitdiffstats
path: root/sys/powerpc/aim
diff options
context:
space:
mode:
authorjhibbits <jhibbits@FreeBSD.org>2013-09-03 00:42:15 +0000
committerjhibbits <jhibbits@FreeBSD.org>2013-09-03 00:42:15 +0000
commit67d6bf79922448fb405226340f66c60404c48d8c (patch)
tree397aa5862818339794167dfd561f04ef7ccda703 /sys/powerpc/aim
parent241d6ad5a0c8a52a564eacc5aa40d69099a3339e (diff)
downloadFreeBSD-src-67d6bf79922448fb405226340f66c60404c48d8c.zip
FreeBSD-src-67d6bf79922448fb405226340f66c60404c48d8c.tar.gz
Enable PMC interrupt handling, and fix a DTrace trap handling bug.
Diffstat (limited to 'sys/powerpc/aim')
-rw-r--r--sys/powerpc/aim/trap.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/sys/powerpc/aim/trap.c b/sys/powerpc/aim/trap.c
index 97f4ca1..2edbbfa 100644
--- a/sys/powerpc/aim/trap.c
+++ b/sys/powerpc/aim/trap.c
@@ -197,13 +197,11 @@ trap(struct trapframe *frame)
#ifdef HWPMC_HOOKS
if (type == EXC_PERF && (pmc_intr != NULL)) {
-#ifdef notyet
- (*pmc_intr)(PCPU_GET(cpuid), frame);
- if (!user)
+ (*pmc_intr)(PCPU_GET(cpuid), frame);
+ if (user)
+ userret(td, frame);
return;
-#endif
}
- else
#endif
#ifdef KDTRACE_HOOKS
/*
@@ -316,9 +314,11 @@ trap(struct trapframe *frame)
if (*(uintptr_t *)frame->srr0 == 0x7c810808) {
if (dtrace_invop_jump_addr != NULL) {
dtrace_invop_jump_addr(frame);
+ return;
}
}
}
+ break;
#endif
#ifdef __powerpc64__
case EXC_DSE:
OpenPOWER on IntegriCloud