diff options
author | Marc Zyngier <Marc.Zyngier@arm.com> | 2012-09-13 16:40:46 +0100 |
---|---|---|
committer | Will Deacon <will.deacon@arm.com> | 2012-11-09 11:37:24 +0000 |
commit | e50c54189f7c6211a99539156e3978474f0b1a0b (patch) | |
tree | f2875cfc036a202270427471dd53e16f0ae48381 /arch/arm/include | |
parent | 3d70f8c617a436c7146ecb81df2265b4626dfe89 (diff) | |
download | linux-e50c54189f7c6211a99539156e3978474f0b1a0b.tar.gz linux-e50c54189f7c6211a99539156e3978474f0b1a0b.tar.bz2 linux-e50c54189f7c6211a99539156e3978474f0b1a0b.zip |
ARM: perf: add guest vs host discrimination
Add minimal guest support to perf, so it can distinguish whether
the PMU interrupt was in the host or the guest, as well as collecting
some very basic information (guest PC, user vs kernel mode).
This is not feature complete though, as it doesn't support backtracing
in the guest.
Based on the x86 implementation, tested with KVM/ARM.
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'arch/arm/include')
-rw-r--r-- | arch/arm/include/asm/perf_event.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/arm/include/asm/perf_event.h b/arch/arm/include/asm/perf_event.h index 625cd621a436..00416edecead 100644 --- a/arch/arm/include/asm/perf_event.h +++ b/arch/arm/include/asm/perf_event.h @@ -21,4 +21,9 @@ #define C(_x) PERF_COUNT_HW_CACHE_##_x #define CACHE_OP_UNSUPPORTED 0xFFFF +struct pt_regs; +extern unsigned long perf_instruction_pointer(struct pt_regs *regs); +extern unsigned long perf_misc_flags(struct pt_regs *regs); +#define perf_misc_flags(regs) perf_misc_flags(regs) + #endif /* __ARM_PERF_EVENT_H__ */ |