summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/arm/include/pmc_mdep.h5
-rw-r--r--sys/dev/hwpmc/hwpmc_arm.c1
2 files changed, 4 insertions, 2 deletions
diff --git a/sys/arm/include/pmc_mdep.h b/sys/arm/include/pmc_mdep.h
index 43546b8..91023f4 100644
--- a/sys/arm/include/pmc_mdep.h
+++ b/sys/arm/include/pmc_mdep.h
@@ -56,8 +56,7 @@ union pmc_md_pmc {
#define PMC_IN_KERNEL_STACK(S,START,END) \
((S) >= (START) && (S) < (END))
-#define PMC_IN_KERNEL(va) (((va) >= USRSTACK) && \
- ((va) < VM_MAX_KERNEL_ADDRESS))
+#define PMC_IN_KERNEL(va) INKERNEL((va))
#define PMC_IN_USERSPACE(va) ((va) <= VM_MAXUSER_ADDRESS)
@@ -65,6 +64,8 @@ union pmc_md_pmc {
#define PMC_TRAPFRAME_TO_FP(TF) ((TF)->tf_r11)
#define PMC_TRAPFRAME_TO_SVC_SP(TF) ((TF)->tf_svc_sp)
#define PMC_TRAPFRAME_TO_USR_SP(TF) ((TF)->tf_usr_sp)
+#define PMC_TRAPFRAME_TO_SVC_LR(TF) ((TF)->tf_svc_lr)
+#define PMC_TRAPFRAME_TO_USR_LR(TF) ((TF)->tf_usr_lr)
/* Build a fake kernel trapframe from current instruction pointer. */
#define PMC_FAKE_TRAPFRAME(TF) \
diff --git a/sys/dev/hwpmc/hwpmc_arm.c b/sys/dev/hwpmc/hwpmc_arm.c
index 492695a..a2a25a9 100644
--- a/sys/dev/hwpmc/hwpmc_arm.c
+++ b/sys/dev/hwpmc/hwpmc_arm.c
@@ -36,6 +36,7 @@ __FBSDID("$FreeBSD$");
#include <machine/cpu.h>
#include <machine/md_var.h>
#include <machine/pmc_mdep.h>
+#include <machine/stack.h>
#include <vm/vm.h>
#include <vm/vm_param.h>
OpenPOWER on IntegriCloud