| /linux/arch/x86/events/ |
| H A D | core.c | 707 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); in x86_pmu_disable_all() local 711 struct hw_perf_event *hwc = &cpuc->events[idx]->hw; in x86_pmu_disable_all() 714 if (!test_bit(idx, cpuc->active_mask)) in x86_pmu_disable_all() 747 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); in x86_pmu_disable() local 752 if (!cpuc->enabled) in x86_pmu_disable() 755 cpuc->n_added = 0; in x86_pmu_disable() 756 cpuc->enabled = 0; in x86_pmu_disable() 764 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); in x86_pmu_enable_all() local 768 struct hw_perf_event *hwc = &cpuc->events[idx]->hw; in x86_pmu_enable_all() 770 if (!test_bit(idx, cpuc in x86_pmu_enable_all() 795 struct cpu_hw_events *cpuc = &per_cpu(cpu_hw_events, cpu); x86_get_pmu() local 1005 x86_schedule_events(struct cpu_hw_events * cpuc,int n,int * assign) x86_schedule_events() argument 1142 add_nr_metric_event(struct cpu_hw_events * cpuc,struct perf_event * event) add_nr_metric_event() argument 1155 del_nr_metric_event(struct cpu_hw_events * cpuc,struct perf_event * event) del_nr_metric_event() argument 1162 collect_event(struct cpu_hw_events * cpuc,struct perf_event * event,int max_count,int n) collect_event() argument 1186 collect_events(struct cpu_hw_events * cpuc,struct perf_event * leader,bool dogrp) collect_events() argument 1239 x86_assign_hw_event(struct perf_event * event,struct cpu_hw_events * cpuc,int i) x86_assign_hw_event() argument 1298 match_prev_assignment(struct perf_event * event,struct cpu_hw_events * cpuc,int i) match_prev_assignment() argument 1313 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); x86_pmu_enable() local 1481 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); x86_pmu_add() local 1539 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); x86_pmu_start() local 1565 struct cpu_hw_events *cpuc; perf_event_print_debug() local 1627 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); x86_pmu_stop() local 1649 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); x86_pmu_del() local 1711 struct cpu_hw_events *cpuc; x86_pmu_handle_irq() local 1831 struct cpu_hw_events *cpuc = &per_cpu(cpu_hw_events, cpu); x86_pmu_prepare_cpu() local 1850 struct cpu_hw_events *cpuc = &per_cpu(cpu_hw_events, cpu); x86_pmu_online_cpu() local 2298 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); x86_pmu_start_txn() local 2320 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); x86_pmu_cancel_txn() local 2349 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); x86_pmu_commit_txn() local 2387 free_fake_cpuc(struct cpu_hw_events * cpuc) free_fake_cpuc() argument 2395 struct cpu_hw_events *cpuc; allocate_fake_cpuc() local 2550 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); perf_clear_dirty_counters() local [all...] |
| H A D | perf_event.h | 847 int (*schedule_events)(struct cpu_hw_events *cpuc, int n, int *assign); 887 (*get_event_constraints)(struct cpu_hw_events *cpuc, 891 void (*put_event_constraints)(struct cpu_hw_events *cpuc, 894 void (*start_scheduling)(struct cpu_hw_events *cpuc); 896 void (*commit_scheduling)(struct cpu_hw_events *cpuc, int idx, int cntr); 898 void (*stop_scheduling)(struct cpu_hw_events *cpuc); 1005 void (*lbr_read)(struct cpu_hw_events *cpuc); 1298 int x86_schedule_events(struct cpu_hw_events *cpuc, int n, int *assign); 1509 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); in amd_pmu_brs_add() 1512 cpuc in amd_pmu_brs_add() 1511 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); amd_pmu_brs_add() local 1523 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); amd_pmu_brs_del() local 1894 intel_cpuc_prepare(struct cpu_hw_events * cpuc,int cpu) intel_cpuc_prepare() argument 1899 intel_cpuc_finish(struct cpu_hw_events * cpuc) intel_cpuc_finish() argument [all...] |
| /linux/arch/sparc/kernel/ |
| H A D | perf_event.c | 827 static inline void sparc_pmu_enable_event(struct cpu_hw_events *cpuc, struct hw_perf_event *hwc, in… in sparc_pmu_enable_event() argument 835 enc = perf_event_get_enc(cpuc->events[idx]); in sparc_pmu_enable_event() 837 val = cpuc->pcr[pcr_index]; in sparc_pmu_enable_event() 840 cpuc->pcr[pcr_index] = val; in sparc_pmu_enable_event() 842 pcr_ops->write_pcr(pcr_index, cpuc->pcr[pcr_index]); in sparc_pmu_enable_event() 845 static inline void sparc_pmu_disable_event(struct cpu_hw_events *cpuc, struct hw_perf_event *hwc, i… in sparc_pmu_disable_event() argument 855 val = cpuc->pcr[pcr_index]; in sparc_pmu_disable_event() 858 cpuc->pcr[pcr_index] = val; in sparc_pmu_disable_event() 860 pcr_ops->write_pcr(pcr_index, cpuc->pcr[pcr_index]); in sparc_pmu_disable_event() 923 static void read_in_all_counters(struct cpu_hw_events *cpuc) in read_in_all_counters() argument [all …]
|
| /linux/arch/x86/events/intel/ |
| H A D | ds.c | 1077 struct cpu_hw_events *cpuc = per_cpu_ptr(&cpu_hw_events, cpu); in init_arch_pebs_on_cpu() 1083 if (!cpuc->pebs_vaddr) { in init_arch_pebs_on_cpu() 1095 arch_pebs_base = virt_to_phys(cpuc->pebs_vaddr) | PEBS_BUFFER_SHIFT; in init_arch_pebs_on_cpu() 1137 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); 1140 if (!cpuc->ds) in intel_pmu_disable_bts() local 1154 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); 1155 struct debug_store *ds = cpuc->ds; in intel_pmu_drain_bts_buffer() 1161 struct perf_event *event = cpuc->events[INTEL_PMC_IDX_FIXED_BTS]; in intel_pmu_drain_bts_buffer() 1592 static inline bool pebs_needs_sched_cb(struct cpu_hw_events *cpuc) in intel_pmu_pebs_sched_task() 1594 if (cpuc in intel_pmu_pebs_sched_task() local 1079 struct cpu_hw_events *cpuc = per_cpu_ptr(&cpu_hw_events, cpu); init_arch_pebs_on_cpu() local 1157 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_drain_bts_buffer() local 1584 pebs_needs_sched_cb(struct cpu_hw_events * cpuc) pebs_needs_sched_cb() argument 1600 pebs_update_threshold(struct cpu_hw_events * cpuc) pebs_update_threshold() argument 1640 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); adaptive_pebs_record_size_update() local 1686 intel_pmu_pebs_late_setup(struct cpu_hw_events * cpuc) intel_pmu_pebs_late_setup() argument 1758 pebs_update_state(bool needed_cb,struct cpu_hw_events * cpuc,struct perf_event * event,bool add) pebs_update_state() argument 1798 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_get_arch_pebs_data_config() local 1817 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_pebs_add() local 1832 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_pebs_via_pt_disable() local 1843 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_pebs_via_pt_enable() local 1869 intel_pmu_drain_large_pebs(struct cpu_hw_events * cpuc) intel_pmu_drain_large_pebs() argument 1878 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); __intel_pmu_pebs_enable() local 1887 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_pebs_enable() local 1942 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_pebs_del() local 1957 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); __intel_pmu_pebs_disable() local 1967 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_pebs_disable() local 1986 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_pebs_enable_all() local 1994 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_pebs_disable_all() local 2002 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_pebs_fixup_ip() local 2177 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); setup_pebs_fixed_sample_data() local 2379 __setup_pebs_counter_group(struct cpu_hw_events * cpuc,struct perf_event * event,struct pebs_cntr_header * cntr,void * next_record) __setup_pebs_counter_group() argument 2509 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); setup_pebs_adaptive_sample_data() local 2627 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); setup_arch_pebs_sample_data() local 2747 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); get_next_pebs_record_by_bit() local 2933 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); __intel_pmu_pebs_events() local 2954 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_drain_pebs_core() local 2990 intel_pmu_pebs_event_update_no_drain(struct cpu_hw_events * cpuc,u64 mask) intel_pmu_pebs_event_update_no_drain() argument 3012 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_drain_pebs_nhm() local 3134 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); __intel_pmu_handle_pebs_record() local 3161 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); __intel_pmu_handle_last_pebs_record() local 3181 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_drain_pebs_icl() local 3232 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_drain_arch_pebs() local [all...] |
| H A D | core.c | 2762 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); in intel_pmu_disable_fixed() 2766 if (bts && test_bit(INTEL_PMC_IDX_FIXED_BTS, cpuc->active_mask)) in intel_pmu_disable_fixed() 2779 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); in __intel_pmu_update_event_ext() local 2780 u64 intel_ctrl = hybrid(cpuc->pmu, intel_ctrl); in __intel_pmu_update_event_ext() 2784 if (cpuc->fixed_ctrl_val != cpuc->active_fixed_ctrl_val) { in __intel_pmu_update_event_ext() 2785 wrmsrq(MSR_ARCH_PERFMON_FIXED_CTR_CTRL, cpuc->fixed_ctrl_val); in __intel_pmu_update_event_ext() 2786 cpuc->active_fixed_ctrl_val = cpuc->fixed_ctrl_val; in __intel_pmu_update_event_ext() 2790 intel_ctrl & ~cpuc in __intel_pmu_update_event_ext() 2510 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); __intel_pmu_disable_all() local 2527 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); __intel_pmu_enable_all() local 2561 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); __intel_pmu_snapshot_branch_stack() local 2614 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_nhm_workaround() local 2679 intel_set_tfa(struct cpu_hw_events * cpuc,bool on) intel_set_tfa() argument 2689 intel_tfa_commit_scheduling(struct cpu_hw_events * cpuc,int idx,int cntr) intel_tfa_commit_scheduling() argument 2700 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_tfa_pmu_enable_all() local 2733 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_set_masks() local 2745 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_clear_masks() local 2754 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_disable_fixed() local 2760 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_disable_fixed() local 2962 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); update_saved_topdown_regs() local 2987 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_update_topdown_event() local 3066 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_read_event() local 3098 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_enable_fixed() local 3104 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_enable_fixed() local 3151 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_config_acr() local 3199 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_enable_event_ext() local 3341 intel_pmu_acr_late_setup(struct cpu_hw_events * cpuc) intel_pmu_acr_late_setup() argument 3387 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_late_setup() local 3447 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_reset() local 3502 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); x86_pmu_handle_guest_pebs() local 3530 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); handle_pmi_common() local 3691 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_pmu_handle_irq() local 3792 intel_alt_er(struct cpu_hw_events * cpuc,int idx,u64 config) intel_alt_er() argument 3862 __intel_shared_reg_get_constraints(struct cpu_hw_events * cpuc,struct perf_event * event,struct hw_perf_event_extra * reg) __intel_shared_reg_get_constraints() argument 3937 __intel_shared_reg_put_constraints(struct cpu_hw_events * cpuc,struct hw_perf_event_extra * reg) __intel_shared_reg_put_constraints() argument 3963 intel_shared_regs_constraints(struct cpu_hw_events * cpuc,struct perf_event * event) intel_shared_regs_constraints() argument 3987 x86_get_event_constraints(struct cpu_hw_events * cpuc,int idx,struct perf_event * event) x86_get_event_constraints() argument 4006 __intel_get_event_constraints(struct cpu_hw_events * cpuc,int idx,struct perf_event * event) __intel_get_event_constraints() argument 4031 intel_start_scheduling(struct cpu_hw_events * cpuc) intel_start_scheduling() argument 4060 intel_commit_scheduling(struct cpu_hw_events * cpuc,int idx,int cntr) intel_commit_scheduling() argument 4087 intel_stop_scheduling(struct cpu_hw_events * cpuc) intel_stop_scheduling() argument 4114 dyn_constraint(struct cpu_hw_events * cpuc,struct event_constraint * c,int idx) dyn_constraint() argument 4143 intel_get_excl_constraints(struct cpu_hw_events * cpuc,struct perf_event * event,int idx,struct event_constraint * c) intel_get_excl_constraints() argument 4243 intel_get_event_constraints(struct cpu_hw_events * cpuc,int idx,struct perf_event * event) intel_get_event_constraints() argument 4275 intel_put_excl_constraints(struct cpu_hw_events * cpuc,struct perf_event * event) intel_put_excl_constraints() argument 4321 intel_put_shared_regs_event_constraints(struct cpu_hw_events * cpuc,struct perf_event * event) intel_put_shared_regs_event_constraints() argument 4335 intel_put_event_constraints(struct cpu_hw_events * cpuc,struct perf_event * event) intel_put_event_constraints() argument 5024 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); intel_guest_get_msrs() local 5104 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); core_guest_get_msrs() local 5138 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); core_pmu_enable_all() local 5214 hsw_get_event_constraints(struct cpu_hw_events * cpuc,int idx,struct perf_event * event) hsw_get_event_constraints() argument 5232 icl_get_event_constraints(struct cpu_hw_events * cpuc,int idx,struct perf_event * event) icl_get_event_constraints() argument 5247 glc_get_event_constraints(struct cpu_hw_events * cpuc,int idx,struct perf_event * event) glc_get_event_constraints() argument 5272 glp_get_event_constraints(struct cpu_hw_events * cpuc,int idx,struct perf_event * event) glp_get_event_constraints() argument 5287 tnt_get_event_constraints(struct cpu_hw_events * cpuc,int idx,struct perf_event * event) tnt_get_event_constraints() argument 5312 tfa_get_event_constraints(struct cpu_hw_events * cpuc,int idx,struct perf_event * event) tfa_get_event_constraints() argument 5330 adl_get_event_constraints(struct cpu_hw_events * cpuc,int idx,struct perf_event * event) adl_get_event_constraints() argument 5345 cmt_get_event_constraints(struct cpu_hw_events * cpuc,int idx,struct perf_event * event) cmt_get_event_constraints() argument 5383 rwc_get_event_constraints(struct cpu_hw_events * cpuc,int idx,struct perf_event * event) rwc_get_event_constraints() argument 5407 mtl_get_event_constraints(struct cpu_hw_events * cpuc,int idx,struct perf_event * event) mtl_get_event_constraints() argument 5446 arl_h_get_event_constraints(struct cpu_hw_events * cpuc,int idx,struct perf_event * event) arl_h_get_event_constraints() argument 5632 intel_cpuc_prepare(struct cpu_hw_events * cpuc,int cpu) intel_cpuc_prepare() argument 6062 struct cpu_hw_events *cpuc = &per_cpu(cpu_hw_events, cpu); init_hybrid_pmu() local 6097 struct cpu_hw_events *cpuc = &per_cpu(cpu_hw_events, cpu); intel_pmu_cpu_starting() local 6187 free_excl_cntrs(struct cpu_hw_events * cpuc) free_excl_cntrs() argument 6208 intel_cpuc_finish(struct cpu_hw_events * cpuc) intel_cpuc_finish() argument 6224 struct cpu_hw_events *cpuc = &per_cpu(cpu_hw_events, cpu); intel_pmu_cpu_dead() local 6817 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); update_tfa_sched() local [all...] |
| H A D | bts.c | 263 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); in bts_event_start() local 274 bts->ds_back.bts_buffer_base = cpuc->ds->bts_buffer_base; in bts_event_start() 275 bts->ds_back.bts_absolute_maximum = cpuc->ds->bts_absolute_maximum; in bts_event_start() 276 bts->ds_back.bts_interrupt_threshold = cpuc->ds->bts_interrupt_threshold; in bts_event_start() 308 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); in bts_event_stop() local 333 cpuc->ds->bts_index = bts->ds_back.bts_buffer_base; in bts_event_stop() 334 cpuc->ds->bts_buffer_base = bts->ds_back.bts_buffer_base; in bts_event_stop() 335 cpuc->ds->bts_absolute_maximum = bts->ds_back.bts_absolute_maximum; in bts_event_stop() 336 cpuc->ds->bts_interrupt_threshold = bts->ds_back.bts_interrupt_threshold; in bts_event_stop() 538 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); in bts_event_add() local [all …]
|
| /linux/tools/sched_ext/ |
| H A D | scx_qmap.bpf.c | 401 struct cpu_ctx *cpuc; in BPF_STRUCT_OPS() local 427 if (!(cpuc = bpf_map_lookup_elem(&cpu_ctx_stor, &zero))) { in BPF_STRUCT_OPS() 434 if (!cpuc->dsp_cnt) { in BPF_STRUCT_OPS() 435 cpuc->dsp_idx = (cpuc->dsp_idx + 1) % 5; in BPF_STRUCT_OPS() 436 cpuc->dsp_cnt = 1 << cpuc->dsp_idx; in BPF_STRUCT_OPS() 439 fifo = bpf_map_lookup_elem(&queue_arr, &cpuc->dsp_idx); in BPF_STRUCT_OPS() 441 scx_bpf_error("failed to find ring %llu", cpuc->dsp_idx); in BPF_STRUCT_OPS() 511 cpuc->dsp_cnt--; in BPF_STRUCT_OPS() 518 if (!cpuc->dsp_cnt) in BPF_STRUCT_OPS() 522 cpuc->dsp_cnt = 0; in BPF_STRUCT_OPS() [all …]
|
| H A D | scx_flatcg.bpf.c | 152 struct fcg_cpu_ctx *cpuc; in find_cpu_ctx() local 155 cpuc = bpf_map_lookup_elem(&cpu_ctx, &idx); in find_cpu_ctx() 156 if (!cpuc) { in find_cpu_ctx() 160 return cpuc; in find_cpu_ctx() 731 struct fcg_cpu_ctx *cpuc; in BPF_STRUCT_OPS() 737 cpuc = find_cpu_ctx(); in BPF_STRUCT_OPS() 738 if (!cpuc) in BPF_STRUCT_OPS() 741 if (!cpuc->cur_cgid) in BPF_STRUCT_OPS() 744 if (time_before(now, cpuc->cur_at + cgrp_slice_ns)) { in BPF_STRUCT_OPS() 745 if (scx_bpf_dsq_move_to_local(cpuc in BPF_STRUCT_OPS() 729 struct fcg_cpu_ctx *cpuc; BPF_STRUCT_OPS() local [all...] |
| /linux/arch/loongarch/kernel/ |
| H A D | perf_event.c | 253 static int loongarch_pmu_alloc_counter(struct cpu_hw_events *cpuc, struct hw_perf_event *hwc) in loongarch_pmu_alloc_counter() argument 258 if (!test_and_set_bit(i, cpuc->used_mask)) in loongarch_pmu_alloc_counter() 269 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); in loongarch_pmu_enable_event() local 274 cpuc->saved_ctrl[idx] = M_PERFCTL_EVENT(evt->event_base) | in loongarch_pmu_enable_event() 288 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); in loongarch_pmu_disable_event() local 293 cpuc->saved_ctrl[idx] = loongarch_pmu_read_control(idx) & in loongarch_pmu_disable_event() 295 loongarch_pmu_write_control(idx, cpuc->saved_ctrl[idx]); in loongarch_pmu_disable_event() 388 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); in loongarch_pmu_add() local 394 idx = loongarch_pmu_alloc_counter(cpuc, hwc); in loongarch_pmu_add() 406 cpuc->events[idx] = event; in loongarch_pmu_add() [all …]
|
| /linux/arch/sh/kernel/ |
| H A D | perf_event.c | 201 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); in sh_pmu_stop() local 207 cpuc->events[idx] = NULL; in sh_pmu_stop() 219 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); in sh_pmu_start() local 229 cpuc->events[idx] = event; in sh_pmu_start() 236 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); in sh_pmu_del() local 239 __clear_bit(event->hw.idx, cpuc->used_mask); in sh_pmu_del() 246 struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events); in sh_pmu_add() local 253 if (__test_and_set_bit(idx, cpuc->used_mask)) { in sh_pmu_add() 254 idx = find_first_zero_bit(cpuc->used_mask, sh_pmu->num_events); in sh_pmu_add() 258 __set_bit(idx, cpuc->used_mask); in sh_pmu_add()
|
| /linux/drivers/perf/ |
| H A D | riscv_pmu.c | 260 struct cpu_hw_events *cpuc = this_cpu_ptr(rvpmu->hw_events); in riscv_pmu_add() local 269 cpuc->events[idx] = event; in riscv_pmu_add() 270 cpuc->n_events++; in riscv_pmu_add() 284 struct cpu_hw_events *cpuc = this_cpu_ptr(rvpmu->hw_events); in riscv_pmu_del() local 288 cpuc->events[hwc->idx] = NULL; in riscv_pmu_del() 292 cpuc->n_events--; in riscv_pmu_del() 390 struct cpu_hw_events *cpuc; in riscv_pmu_alloc() local 403 cpuc = per_cpu_ptr(pmu->hw_events, cpuid); in riscv_pmu_alloc() 404 cpuc->n_events = 0; in riscv_pmu_alloc() 406 cpuc->events[i] = NULL; in riscv_pmu_alloc() [all …]
|
| H A D | riscv_pmu_sbi.c | 542 struct cpu_hw_events *cpuc = this_cpu_ptr(rvpmu->hw_events); in pmu_sbi_ctr_get_idx() local 586 if (!test_and_set_bit(idx, cpuc->used_fw_ctrs)) in pmu_sbi_ctr_get_idx() 589 if (!test_and_set_bit(idx, cpuc->used_hw_ctrs)) in pmu_sbi_ctr_get_idx() 601 struct cpu_hw_events *cpuc = this_cpu_ptr(rvpmu->hw_events); in pmu_sbi_ctr_clear_idx() local 605 clear_bit(idx, cpuc->used_fw_ctrs); in pmu_sbi_ctr_clear_idx() 607 clear_bit(idx, cpuc->used_hw_ctrs); in pmu_sbi_ctr_clear_idx() 1246 struct cpu_hw_events *cpuc = this_cpu_ptr(rvpmu->hw_events); in riscv_pm_pmu_notify() local 1247 bool enabled = !bitmap_empty(cpuc->used_hw_ctrs, RISCV_MAX_COUNTERS); in riscv_pm_pmu_notify() 1255 event = cpuc->events[idx]; in riscv_pm_pmu_notify()
|
| H A D | arm_brbe.c | 496 struct pmu_hw_events *cpuc = this_cpu_ptr(arm_pmu->hw_events); in brbe_enable() local 509 struct perf_event *event = cpuc->events[i]; in brbe_enable()
|