mirror of
https://github.com/freebsd/freebsd-src
synced 2024-10-15 12:54:27 +00:00
c190fb35f3
Background: The pm_ev field of struct pmc_op_pmcallocate and struct pmc traditionally contains the index of the chosen event, corresponding to the __PMC_EVENTS array in pmc_events.h. This is a static list of events, maintained by FreeBSD. In the usual case, libpmc translates the user supplied event name (string) into the pm_ev index, which is passed as an argument to the allocation syscall. On the kernel side, the allocation method for the relevant hwpmc class translates the given index into the event code that will be written to an event selection register. In 2018, a new source of performance event definitions was introduced: the pmu-events json files, which are maintained by the Linux kernel. The result was better coverage for newer Intel processors with a reduced maintenance burden for libpmc/hwpmc. Intel and AMD CPUs were unconditionally switched to allocate events from pmu-events instead of the traditional scheme ( |
||
---|---|---|
.. | ||
hwpmc_amd.c | ||
hwpmc_amd.h | ||
hwpmc_arm.c | ||
hwpmc_arm64.c | ||
hwpmc_arm64.h | ||
hwpmc_arm64_md.c | ||
hwpmc_armv7.c | ||
hwpmc_armv7.h | ||
hwpmc_cmn600.c | ||
hwpmc_cmn600.h | ||
hwpmc_core.c | ||
hwpmc_core.h | ||
hwpmc_dmc620.c | ||
hwpmc_dmc620.h | ||
hwpmc_e500.c | ||
hwpmc_intel.c | ||
hwpmc_logging.c | ||
hwpmc_mod.c | ||
hwpmc_mpc7xxx.c | ||
hwpmc_power8.c | ||
hwpmc_powerpc.c | ||
hwpmc_powerpc.h | ||
hwpmc_ppc970.c | ||
hwpmc_riscv.h | ||
hwpmc_soft.c | ||
hwpmc_soft.h | ||
hwpmc_tsc.c | ||
hwpmc_tsc.h | ||
hwpmc_uncore.c | ||
hwpmc_uncore.h | ||
hwpmc_x86.c | ||
pmc_events.h | ||
pmu_dmc620.c | ||
pmu_dmc620_reg.h |