WSL2-Linux-Kernel/arch
Markus Metzger 30dd568c91 x86, perf_counter, bts: Add BTS support to perfcounters
Implement a performance counter with:

    attr.type           = PERF_TYPE_HARDWARE
    attr.config         = PERF_COUNT_HW_BRANCH_INSTRUCTIONS
    attr.sample_period  = 1

Using branch trace store (BTS) on x86 hardware, if available.

The from and to address for each branch can be sampled using:

    PERF_SAMPLE_IP      for the from address
    PERF_SAMPLE_ADDR    for the to address

[ v2: address review feedback, fix bugs ]

Signed-off-by: Markus Metzger <markus.t.metzger@intel.com>
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-08-09 13:04:14 +02:00
..
alpha mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
arm USB: musb: fix the nop registration for OMAP3EVM 2009-08-07 16:05:13 -07:00
avr32 mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
blackfin blackfin: fix wrong CTS inversion 2009-07-20 16:38:44 -07:00
cris mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
frv mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
h8300 sched: INIT_PREEMPT_COUNT 2009-07-10 14:24:05 -07:00
ia64 mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
m32r mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
m68k mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
m68knommu Remove multiple KERN_ prefixes from printk formats 2009-07-08 10:30:03 -07:00
microblaze Merge branch 'fixes-for-linus' of git://git.monstr.eu/linux-2.6-microblaze 2009-07-27 12:18:27 -07:00
mips MIPS: Wire up accept4 syscall. 2009-08-03 17:52:50 +01:00
mn10300 mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
parisc parisc: Set correct bit in protection flags 2009-08-02 12:36:05 +02:00
powerpc perf_counter/powerpc: Fix oops on cpus without perf_counter hardware support 2009-08-09 12:54:37 +02:00
s390 [S390] KVM: Read buffer overflow 2009-08-07 10:40:40 +02:00
sh mm: Remove duplicate definitions in MIPS and SH 2009-07-27 17:26:44 -07:00
sparc mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
um mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
x86 x86, perf_counter, bts: Add BTS support to perfcounters 2009-08-09 13:04:14 +02:00
xtensa mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
.gitignore
Kconfig gcov: add gcov profiling infrastructure 2009-06-18 13:03:57 -07:00