Home
last modified time | relevance | path

Searched refs:x86_pmu (Results 1 – 7 of 7) sorted by relevance

/linux/arch/x86/events/intel/
H A Dcore.c2816 cnt = min_t(unsigned int, cnt, x86_pmu.lbr_nr); in __intel_pmu_snapshot_branch_stack()
3036 x86_pmu.addr_offset(idx, false); in __intel_pmu_update_event_ext()
3039 x86_pmu.addr_offset(idx - INTEL_PMC_IDX_FIXED, false); in __intel_pmu_update_event_ext()
3162 if (left == x86_pmu.max_period) { in icl_set_topdown_event_period()
3329 x86_pmu.num_topdown_events - 1, in icl_update_topdown_event()
3404 if (x86_pmu.version > 2 && hwc->config & ARCH_PERFMON_EVENTSEL_ANY) in intel_pmu_enable_fixed()
3409 if (x86_pmu.intel_cap.pebs_baseline && event->attr.precise_ip) in intel_pmu_enable_fixed()
3428 msr_offset = x86_pmu.addr_offset(idx, false); in intel_pmu_config_acr()
3432 msr_offset = x86_pmu.addr_offset(idx - INTEL_PMC_IDX_FIXED, false); in intel_pmu_config_acr()
3549 if (x86_pmu.attr_rdpmc == X86_USER_RDPMC_ALWAYS_ENABLE || in intel_pmu_update_rdpmc_user_disable()
[all …]
H A Dds.c184 data_source = x86_pmu.hybrid_pmu[X86_HYBRID_PMU_CORE_IDX].pebs_data_source; in intel_pmu_pebs_data_source_adl()
188 data_source = x86_pmu.hybrid_pmu[X86_HYBRID_PMU_ATOM_IDX].pebs_data_source; in intel_pmu_pebs_data_source_adl()
207 data_source = x86_pmu.hybrid_pmu[X86_HYBRID_PMU_CORE_IDX].pebs_data_source; in intel_pmu_pebs_data_source_mtl()
211 data_source = x86_pmu.hybrid_pmu[X86_HYBRID_PMU_ATOM_IDX].pebs_data_source; in intel_pmu_pebs_data_source_mtl()
222 data_source = x86_pmu.hybrid_pmu[X86_HYBRID_PMU_TINY_IDX].pebs_data_source; in intel_pmu_pebs_data_source_arl_h()
258 data_source = x86_pmu.hybrid_pmu[X86_HYBRID_PMU_CORE_IDX].pebs_data_source; in intel_pmu_pebs_data_source_lnl()
261 data_source = x86_pmu.hybrid_pmu[X86_HYBRID_PMU_ATOM_IDX].pebs_data_source; in intel_pmu_pebs_data_source_lnl()
655 if (x86_pmu.pebs_no_tlb) { in load_latency_data()
665 if (!x86_pmu.pebs_block) { in load_latency_data()
849 size_t bsiz = x86_pmu.pebs_buffer_size; in alloc_pebs_buffer()
[all …]
H A Dbts.c606 x86_pmu.bts = boot_cpu_has(X86_FEATURE_BTS); in bts_init()
607 if (!x86_pmu.bts) in bts_init()
/linux/arch/x86/events/amd/
H A Dcore.c357 if (!(x86_pmu.flags & PMU_FL_PAIR)) in amd_is_pair_event_code()
366 DEFINE_STATIC_CALL_RET0(amd_pmu_branch_hw_config, *x86_pmu.hw_config);
383 if ((x86_pmu.flags & PMU_FL_PAIR) && amd_is_pair_event_code(&event->hw)) in amd_core_hw_config()
412 if (has_branch_stack(event) && !x86_pmu.lbr_nr) in amd_pmu_hw_config()
439 for_each_set_bit(i, x86_pmu.cntr_mask, X86_PMC_IDX_MAX) { in __amd_put_nb_event_constraints()
551 for_each_set_bit(i, x86_pmu.cntr_mask, X86_PMC_IDX_MAX) { in amd_alloc_nb()
563 if (x86_pmu.lbr_nr) in amd_pmu_cpu_reset()
566 if (x86_pmu.version < 2) in amd_pmu_cpu_reset()
591 if (!x86_pmu.amd_nb_constraints) in amd_pmu_cpu_prepare()
614 if (!x86_pmu.amd_nb_constraints) in amd_pmu_cpu_starting()
[all …]
H A Dbrs.c62 x86_pmu.lbr_nr = 16; in amd_brs_detect()
65 x86_pmu.lbr_sel_map = NULL; in amd_brs_detect()
66 x86_pmu.lbr_sel_mask = 0; in amd_brs_detect()
86 if (!x86_pmu.lbr_nr) in amd_brs_setup_filter()
148 if (event->attr.sample_period <= x86_pmu.lbr_nr) in amd_brs_hw_config()
170 return (cfg->msroff ? cfg->msroff : x86_pmu.lbr_nr) - 1; in amd_brs_get_tos()
198 pr_cont("%d-deep BRS, ", x86_pmu.lbr_nr); in amd_brs_init()
302 if (WARN_ON_ONCE(cfg.msroff >= x86_pmu.lbr_nr)) in amd_brs_drain()
H A Dlbr.c174 for (i = 0; i < x86_pmu.lbr_nr; i++) { in amd_pmu_lbr_read()
257 if (!x86_pmu.lbr_nr) in amd_pmu_lbr_setup_filter()
329 if (!x86_pmu.lbr_nr) in amd_pmu_lbr_reset()
333 for (i = 0; i < x86_pmu.lbr_nr; i++) { in amd_pmu_lbr_reset()
348 if (!x86_pmu.lbr_nr) in amd_pmu_lbr_add()
367 if (!x86_pmu.lbr_nr) in amd_pmu_lbr_del()
397 if (!cpuc->lbr_users || !x86_pmu.lbr_nr) in amd_pmu_lbr_enable_all()
419 if (!cpuc->lbr_users || !x86_pmu.lbr_nr) in amd_pmu_lbr_disable_all()
429 if (x86_pmu.version < 2 || !boot_cpu_has(X86_FEATURE_AMD_LBR_V2)) in amd_pmu_lbr_init()
434 x86_pmu.lbr_nr = ebx.split.lbr_v2_stack_sz; in amd_pmu_lbr_init()
[all …]
/linux/arch/x86/events/
H A Dperf_event.h798 typeof(&x86_pmu._field) __Fp = &x86_pmu._field; \
818 bool __Fp = x86_pmu._field; \
829 struct x86_pmu { struct
1102 __quirk.next = x86_pmu.quirks; \
1103 x86_pmu.quirks = &__quirk; \
1166 extern struct x86_pmu x86_pmu __read_mostly;
1168 DECLARE_STATIC_CALL(x86_pmu_set_period, *x86_pmu.set_period);
1169 DECLARE_STATIC_CALL(x86_pmu_update, *x86_pmu.update);
1170 DECLARE_STATIC_CALL(x86_pmu_drain_pebs, *x86_pmu.drain_pebs);
1171 DECLARE_STATIC_CALL(x86_pmu_late_setup, *x86_pmu.late_setup);
[all …]