]> CyberLeo.Net >> Repos - FreeBSD/stable/9.git/commit
MFC r233628, r234598, r235229, r235831, r226986.
authorfabient <fabient@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Tue, 29 May 2012 14:50:21 +0000 (14:50 +0000)
committerfabient <fabient@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Tue, 29 May 2012 14:50:21 +0000 (14:50 +0000)
commit1157de9d63c69bae4804278511508bc3c9807b63
tree8bf70a4d68a300b217bab5b1a2354cd0ba923286
parent48db00a0e829d29465a4bbea261767f641e241b6
MFC r233628, r234598, r235229, r235831, r226986.

Add software PMC support.

New kernel events can be added at various location for sampling or counting.
This will for example allow easy system profiling whatever the processor is
with known tools like pmcstat(8).

Simultaneous usage of software PMC and hardware PMC is possible, for example
looking at the lock acquire failure, page fault while sampling on
instructions.

Sponsored by: NETASQ

git-svn-id: svn://svn.freebsd.org/base/stable/9@236238 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
61 files changed:
lib/libpmc/Makefile
lib/libpmc/libpmc.c
lib/libpmc/pmc.3
lib/libpmc/pmc.atom.3
lib/libpmc/pmc.core.3
lib/libpmc/pmc.core2.3
lib/libpmc/pmc.corei7.3
lib/libpmc/pmc.corei7uc.3
lib/libpmc/pmc.iaf.3
lib/libpmc/pmc.k7.3
lib/libpmc/pmc.k8.3
lib/libpmc/pmc.p4.3
lib/libpmc/pmc.p5.3
lib/libpmc/pmc.p6.3
lib/libpmc/pmc.sandybridge.3
lib/libpmc/pmc.sandybridgeuc.3
lib/libpmc/pmc.soft.3 [new file with mode: 0644]
lib/libpmc/pmc.tsc.3
lib/libpmc/pmc.ucf.3
lib/libpmc/pmc.westmere.3
lib/libpmc/pmc.westmereuc.3
lib/libpmc/pmc.xscale.3
lib/libpmc/pmclog.c
lib/libpmc/pmclog.h
sys/amd64/amd64/trap.c
sys/amd64/include/pmc_mdep.h
sys/arm/arm/machdep.c
sys/arm/include/pmc_mdep.h
sys/conf/files
sys/dev/hwpmc/hwpmc_amd.c
sys/dev/hwpmc/hwpmc_arm.c
sys/dev/hwpmc/hwpmc_core.c
sys/dev/hwpmc/hwpmc_intel.c
sys/dev/hwpmc/hwpmc_logging.c
sys/dev/hwpmc/hwpmc_mod.c
sys/dev/hwpmc/hwpmc_piv.c
sys/dev/hwpmc/hwpmc_powerpc.c
sys/dev/hwpmc/hwpmc_ppro.c
sys/dev/hwpmc/hwpmc_soft.c [new file with mode: 0644]
sys/dev/hwpmc/hwpmc_soft.h [new file with mode: 0644]
sys/dev/hwpmc/hwpmc_tsc.c
sys/dev/hwpmc/hwpmc_x86.c
sys/dev/hwpmc/hwpmc_xscale.c
sys/dev/hwpmc/pmc_events.h
sys/i386/i386/trap.c
sys/i386/include/pmc_mdep.h
sys/kern/kern_clock.c
sys/kern/kern_lock.c
sys/kern/kern_mutex.c
sys/kern/kern_pmc.c
sys/kern/kern_rwlock.c
sys/kern/kern_sx.c
sys/kern/subr_trap.c
sys/mips/include/pmc_mdep.h
sys/modules/hwpmc/Makefile
sys/powerpc/include/pmc_mdep.h
sys/sys/pmc.h
sys/sys/pmckern.h
sys/sys/pmclog.h
usr.sbin/pmcstat/pmcstat.c
usr.sbin/pmcstat/pmcstat_log.c