8#ifndef __PERFMON_V2_H__
9#define __PERFMON_V2_H__
12#error "this file should never be included directly, use perfmon.h instead"
21 uint64_t ctx_reserved3[7];
32 uint64_t reg_reserved2[4];
52 uint32_t reg_reserved2[7];
62 uint64_t reserved3[3];
72 uint64_t load_reserved2[3];
75#ifndef PFMLIB_OLD_PFMV2
94 uint64_t set_reserved3[6];
99#ifdef PFMLIB_OLD_PFMV2
106 uint16_t set_id_next;
108 uint64_t set_timeout;
109 uint64_t set_mmap_offset;
118 uint16_t set_id_next;
122 uint64_t set_timeout;
123 uint64_t set_act_duration;
124 uint64_t set_mmap_offset;
131#define PFM_MAX_HW_PMDS 512
133#define PFM_MAX_HW_PMDS 256
135#define PFM_HW_PMD_BV PFM_BVSIZE(PFM_MAX_HW_PMDS)
139 uint32_t msg_ovfl_pid;
140 uint64_t msg_ovfl_pmds[PFM_HW_PMD_BV];
141 uint16_t msg_active_set;
142 uint16_t msg_ovfl_cpu;
143 uint32_t msg_ovfl_tid;
144 uint64_t msg_ovfl_ip;
150 void *smpl_arg,
size_t smpl_size);
static struct timeval start
os_err_t pfm_getinfo_evtsets(int fd, pfarg_setinfo_t *info, int count)
os_err_t pfm_stop(int fd)
os_err_t pfm_write_pmds(int fd, pfarg_pmd_t *pmds, int count)
os_err_t pfm_unload_context(int fd)
os_err_t pfm_write_pmcs(int fd, pfarg_pmc_t *pmcs, int count)
os_err_t pfm_delete_evtsets(int fd, pfarg_setdesc_t *setd, int count)
os_err_t pfm_start(int fd, pfarg_start_t *start)
os_err_t pfm_create_context(pfarg_ctx_t *ctx, char *smpl_name, void *smpl_arg, size_t smpl_size)
os_err_t pfm_restart(int fd)
os_err_t pfm_load_context(int fd, pfarg_load_t *load)
os_err_t pfm_create_evtsets(int fd, pfarg_setdesc_t *setd, int count)
os_err_t pfm_read_pmds(int fd, pfarg_pmd_t *pmds, int count)
uint64_t reg_ovfl_switch_cnt
uint64_t reg_last_reset_val
uint64_t reg_smpl_eventid
uint64_t set_act_duration