freebsd-skq/lib/libpmc
Mitchell Horne dfdc57e8aa libpmc: fall-back to kernel tables if pmu-events fails
On x86, the pmu_events table is the source of truth for finding
supported events. However, events not found there may still be present
in the kernel's static event tables. For example, the pmc.soft(3) events
will never be available from pmu-events.

Update pmc_allocate() to search the legacy event tables if
pmc_pmu_pmcallocate() fails to return a result. This allows both event
sources to be consulted before giving up, thus restoring pmc.soft(3) and
pmc.tsc(3) on x86.

Reviewed by:	emaste
MFC after:	2 weeks
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D30216
2021-05-13 16:01:24 -03:00
..
pmu-events
libpmc_json.cc
libpmc_pmu_util.c
libpmc.c libpmc: fall-back to kernel tables if pmu-events fails 2021-05-13 16:01:24 -03:00
libpmcinternal.h
Makefile
Makefile.depend
Makefile.inc
pmc_allocate.3
pmc_attach.3
pmc_capabilities.3
pmc_configure_logfile.3
pmc_disable.3
pmc_event_names_of_class.3
pmc_get_driver_stats.3
pmc_get_msr.3
pmc_init.3
pmc_name_of_capability.3
pmc_read.3
pmc_set.3
pmc_start.3
pmc.3
pmc.atom.3
pmc.atomsilvermont.3
pmc.core2.3
pmc.core.3
pmc.corei7.3
pmc.corei7uc.3
pmc.h
pmc.haswell.3
pmc.haswelluc.3
pmc.haswellxeon.3
pmc.iaf.3
pmc.ivybridge.3
pmc.ivybridgexeon.3
pmc.k7.3
pmc.k8.3
pmc.mips24k.3
pmc.octeon.3
pmc.p4.3
pmc.p5.3
pmc.p6.3
pmc.sandybridge.3
pmc.sandybridgeuc.3
pmc.sandybridgexeon.3
pmc.soft.3
pmc.tsc.3
pmc.ucf.3
pmc.westmere.3
pmc.westmereuc.3
pmcformat.h
pmclog.3
pmclog.c
pmclog.h