/kernel/linux/linux-5.10/drivers/perf/ |
H A D | arm_pmu_platform.c | 49 struct pmu_hw_events __percpu *hw_events = pmu->hw_events; in pmu_parse_percpu_irq() local 56 per_cpu(hw_events->irq, cpu) = irq; in pmu_parse_percpu_irq() 101 struct pmu_hw_events __percpu *hw_events = pmu->hw_events; in pmu_parse_irqs() local 147 if (per_cpu(hw_events->irq, cpu)) { in pmu_parse_irqs() 152 per_cpu(hw_events->irq, cpu) = irq; in pmu_parse_irqs() 161 struct pmu_hw_events __percpu *hw_events = armpmu->hw_events; in armpmu_request_irqs() local 165 int irq = per_cpu(hw_events in armpmu_request_irqs() 180 struct pmu_hw_events __percpu *hw_events = armpmu->hw_events; armpmu_free_irqs() local [all...] |
H A D | arm_pmu.c | 312 struct pmu_hw_events *hw_events = this_cpu_ptr(armpmu->hw_events); in armpmu_del() local 317 hw_events->events[idx] = NULL; in armpmu_del() 318 armpmu->clear_event_idx(hw_events, event); in armpmu_del() 328 struct pmu_hw_events *hw_events = this_cpu_ptr(armpmu->hw_events); in armpmu_add() local 337 idx = armpmu->get_event_idx(hw_events, event); in armpmu_add() 347 hw_events->events[idx] = event; in armpmu_add() 360 validate_event(struct pmu *pmu, struct pmu_hw_events *hw_events, in validate_event() argument 383 return armpmu->get_event_idx(hw_events, even in validate_event() 524 struct pmu_hw_events *hw_events = this_cpu_ptr(armpmu->hw_events); armpmu_enable() local 723 struct pmu_hw_events __percpu *hw_events = pmu->hw_events; armpmu_get_cpu_irq() local 772 struct pmu_hw_events *hw_events = this_cpu_ptr(armpmu->hw_events); cpu_pm_pmu_setup() local 814 struct pmu_hw_events *hw_events = this_cpu_ptr(armpmu->hw_events); cpu_pm_pmu_notify() local [all...] |
H A D | arm-cci.c | 108 struct cci_pmu_hw_events hw_events; member 645 struct cci_pmu_hw_events *cci_hw = &cci_pmu->hw_events; in cci_pmu_sync_counters() 649 for_each_set_bit(i, cci_pmu->hw_events.used_mask, cci_pmu->num_cntrs) { in cci_pmu_sync_counters() 667 /* Should be called with cci_pmu->hw_events->pmu_lock held */ 677 /* Should be called with cci_pmu->hw_events->pmu_lock held */ 684 /* Should be called with cci_pmu->hw_events->pmu_lock held */ 759 * cci_pm->hw_events->pmu_lock). 899 struct cci_pmu_hw_events *cci_hw = &cci_pmu->hw_events; in __pmu_write_counters() 964 struct perf_event *event = cci_pmu->hw_events.events[i]; in cci5xx_pmu_write_counters() 1031 struct cci_pmu_hw_events *events = &cci_pmu->hw_events; in pmu_handle_irq() 1099 struct cci_pmu_hw_events *hw_events = &cci_pmu->hw_events; cci_pmu_enable() local 1115 struct cci_pmu_hw_events *hw_events = &cci_pmu->hw_events; cci_pmu_disable() local 1136 struct cci_pmu_hw_events *hw_events = &cci_pmu->hw_events; cci_pmu_start() local 1193 struct cci_pmu_hw_events *hw_events = &cci_pmu->hw_events; cci_pmu_add() local 1218 struct cci_pmu_hw_events *hw_events = &cci_pmu->hw_events; cci_pmu_del() local 1229 validate_event(struct pmu *cci_pmu, struct cci_pmu_hw_events *hw_events, struct perf_event *event) validate_event() argument [all...] |
H A D | arm_pmu_acpi.c | 220 struct pmu_hw_events __percpu *hw_events = pmu->hw_events; in pmu_irq_matches() local 227 int other_irq = per_cpu(hw_events->irq, cpu); in pmu_irq_matches() 255 struct pmu_hw_events __percpu *hw_events; in arm_pmu_acpi_cpu_starting() local 271 hw_events = pmu->hw_events; in arm_pmu_acpi_cpu_starting() 272 per_cpu(hw_events->irq, cpu) = irq; in arm_pmu_acpi_cpu_starting()
|
H A D | arm_dsu_pmu.c | 103 * @hw_events : Holds the event counter state. 117 struct dsu_hw_events hw_events; member 300 static int dsu_pmu_get_event_idx(struct dsu_hw_events *hw_events, in dsu_pmu_get_event_idx() argument 306 unsigned long *used_mask = hw_events->used_mask; in dsu_pmu_get_event_idx() 317 set_bit(idx, hw_events->used_mask); in dsu_pmu_get_event_idx() 396 struct dsu_hw_events *hw_events = &dsu_pmu->hw_events; in dsu_pmu_handle_irq() local 404 struct perf_event *event = hw_events->events[i]; in dsu_pmu_handle_irq() 444 struct dsu_hw_events *hw_events = &dsu_pmu->hw_events; in dsu_pmu_add() local 470 struct dsu_hw_events *hw_events = &dsu_pmu->hw_events; dsu_pmu_del() local 510 dsu_pmu_validate_event(struct pmu *pmu, struct dsu_hw_events *hw_events, struct perf_event *event) dsu_pmu_validate_event() argument [all...] |
/kernel/linux/linux-6.6/drivers/perf/ |
H A D | arm_pmu_platform.c | 48 struct pmu_hw_events __percpu *hw_events = pmu->hw_events; in pmu_parse_percpu_irq() local 55 per_cpu(hw_events->irq, cpu) = irq; in pmu_parse_percpu_irq() 99 struct pmu_hw_events __percpu *hw_events = pmu->hw_events; in pmu_parse_irqs() local 144 if (per_cpu(hw_events->irq, cpu)) { in pmu_parse_irqs() 149 per_cpu(hw_events->irq, cpu) = irq; in pmu_parse_irqs() 158 struct pmu_hw_events __percpu *hw_events = armpmu->hw_events; in armpmu_request_irqs() local 162 int irq = per_cpu(hw_events in armpmu_request_irqs() 177 struct pmu_hw_events __percpu *hw_events = armpmu->hw_events; armpmu_free_irqs() local [all...] |
H A D | arm_pmu.c | 316 struct pmu_hw_events *hw_events = this_cpu_ptr(armpmu->hw_events); in armpmu_del() local 321 hw_events->events[idx] = NULL; in armpmu_del() 322 armpmu->clear_event_idx(hw_events, event); in armpmu_del() 332 struct pmu_hw_events *hw_events = this_cpu_ptr(armpmu->hw_events); in armpmu_add() local 341 idx = armpmu->get_event_idx(hw_events, event); in armpmu_add() 351 hw_events->events[idx] = event; in armpmu_add() 364 validate_event(struct pmu *pmu, struct pmu_hw_events *hw_events, in validate_event() argument 387 return armpmu->get_event_idx(hw_events, even in validate_event() 525 struct pmu_hw_events *hw_events = this_cpu_ptr(armpmu->hw_events); armpmu_enable() local 688 struct pmu_hw_events __percpu *hw_events = pmu->hw_events; armpmu_get_cpu_irq() local 742 struct pmu_hw_events *hw_events = this_cpu_ptr(armpmu->hw_events); cpu_pm_pmu_setup() local 775 struct pmu_hw_events *hw_events = this_cpu_ptr(armpmu->hw_events); cpu_pm_pmu_notify() local [all...] |
H A D | arm-cci.c | 105 struct cci_pmu_hw_events hw_events; member 642 struct cci_pmu_hw_events *cci_hw = &cci_pmu->hw_events; in cci_pmu_sync_counters() 646 for_each_set_bit(i, cci_pmu->hw_events.used_mask, cci_pmu->num_cntrs) { in cci_pmu_sync_counters() 664 /* Should be called with cci_pmu->hw_events->pmu_lock held */ 674 /* Should be called with cci_pmu->hw_events->pmu_lock held */ 681 /* Should be called with cci_pmu->hw_events->pmu_lock held */ 756 * cci_pm->hw_events->pmu_lock). 896 struct cci_pmu_hw_events *cci_hw = &cci_pmu->hw_events; in __pmu_write_counters() 961 struct perf_event *event = cci_pmu->hw_events.events[i]; in cci5xx_pmu_write_counters() 1027 struct cci_pmu_hw_events *events = &cci_pmu->hw_events; in pmu_handle_irq() 1095 struct cci_pmu_hw_events *hw_events = &cci_pmu->hw_events; cci_pmu_enable() local 1111 struct cci_pmu_hw_events *hw_events = &cci_pmu->hw_events; cci_pmu_disable() local 1132 struct cci_pmu_hw_events *hw_events = &cci_pmu->hw_events; cci_pmu_start() local 1189 struct cci_pmu_hw_events *hw_events = &cci_pmu->hw_events; cci_pmu_add() local 1214 struct cci_pmu_hw_events *hw_events = &cci_pmu->hw_events; cci_pmu_del() local 1225 validate_event(struct pmu *cci_pmu, struct cci_pmu_hw_events *hw_events, struct perf_event *event) validate_event() argument [all...] |
H A D | arm_dsu_pmu.c | 103 * @hw_events : Holds the event counter state. 117 struct dsu_hw_events hw_events; member 299 static int dsu_pmu_get_event_idx(struct dsu_hw_events *hw_events, in dsu_pmu_get_event_idx() argument 305 unsigned long *used_mask = hw_events->used_mask; in dsu_pmu_get_event_idx() 316 set_bit(idx, hw_events->used_mask); in dsu_pmu_get_event_idx() 395 struct dsu_hw_events *hw_events = &dsu_pmu->hw_events; in dsu_pmu_handle_irq() local 403 struct perf_event *event = hw_events->events[i]; in dsu_pmu_handle_irq() 443 struct dsu_hw_events *hw_events = &dsu_pmu->hw_events; in dsu_pmu_add() local 469 struct dsu_hw_events *hw_events = &dsu_pmu->hw_events; dsu_pmu_del() local 509 dsu_pmu_validate_event(struct pmu *pmu, struct dsu_hw_events *hw_events, struct perf_event *event) dsu_pmu_validate_event() argument [all...] |
H A D | arm_pmu_acpi.c | 272 struct pmu_hw_events __percpu *hw_events = pmu->hw_events; in pmu_irq_matches() local 279 int other_irq = per_cpu(hw_events->irq, cpu); in pmu_irq_matches() 303 struct pmu_hw_events __percpu *hw_events; in arm_pmu_acpi_associate_pmu_cpu() local 304 hw_events = pmu->hw_events; in arm_pmu_acpi_associate_pmu_cpu() 305 per_cpu(hw_events->irq, cpu) = irq; in arm_pmu_acpi_associate_pmu_cpu()
|
H A D | riscv_pmu.c | 264 struct cpu_hw_events *cpuc = this_cpu_ptr(rvpmu->hw_events); in riscv_pmu_add() 288 struct cpu_hw_events *cpuc = this_cpu_ptr(rvpmu->hw_events); in riscv_pmu_del() 396 pmu->hw_events = alloc_percpu_gfp(struct cpu_hw_events, GFP_KERNEL); in riscv_pmu_alloc() 397 if (!pmu->hw_events) { in riscv_pmu_alloc() 403 cpuc = per_cpu_ptr(pmu->hw_events, cpuid); in riscv_pmu_alloc()
|
H A D | cxl_pmu.c | 98 struct perf_event **hw_events; member 755 info->hw_events[idx] = event; in cxl_pmu_event_add() 771 info->hw_events[hwc->idx] = NULL; in cxl_pmu_event_del() 791 struct perf_event *event = info->hw_events[i]; in cxl_pmu_irq() 845 info->hw_events = devm_kcalloc(dev, sizeof(*info->hw_events), in cxl_pmu_probe() 847 if (!info->hw_events) in cxl_pmu_probe()
|
H A D | riscv_pmu_sbi.c | 345 struct cpu_hw_events *cpuc = this_cpu_ptr(rvpmu->hw_events); in pmu_sbi_ctr_get_idx() 404 struct cpu_hw_events *cpuc = this_cpu_ptr(rvpmu->hw_events); in pmu_sbi_ctr_clear_idx() 619 struct cpu_hw_events *cpu_hw_evt = this_cpu_ptr(pmu->hw_events); in pmu_sbi_stop_hw_ctrs() 636 struct cpu_hw_events *cpu_hw_evt = this_cpu_ptr(pmu->hw_events); in pmu_sbi_start_overflow_mask() 767 struct cpu_hw_events *cpu_hw_evt = this_cpu_ptr(pmu->hw_events); in pmu_sbi_starting_cpu() 807 struct cpu_hw_events __percpu *hw_events = pmu->hw_events; in pmu_sbi_setup_irqs() local 837 ret = request_percpu_irq(riscv_pmu_irq, pmu_sbi_ovf_handler, "riscv-pmu", hw_events); in pmu_sbi_setup_irqs() 851 struct cpu_hw_events *cpuc = this_cpu_ptr(rvpmu->hw_events); in riscv_pm_pmu_notify()
|
/kernel/linux/linux-6.6/drivers/perf/arm_cspmu/ |
H A D | arm_cspmu.c | 533 disabled = bitmap_empty(cspmu->hw_events.used_ctrs, in arm_cspmu_enable() 549 static int arm_cspmu_get_event_idx(struct arm_cspmu_hw_events *hw_events, in arm_cspmu_get_event_idx() argument 559 hw_events->used_ctrs)) in arm_cspmu_get_event_idx() 570 idx = find_first_zero_bit(hw_events->used_ctrs, in arm_cspmu_get_event_idx() 574 hw_events->used_ctrs, in arm_cspmu_get_event_idx() 579 idx = find_first_zero_bit(hw_events->used_ctrs, in arm_cspmu_get_event_idx() 586 set_bit(idx, hw_events->used_ctrs); in arm_cspmu_get_event_idx() 592 struct arm_cspmu_hw_events *hw_events, in arm_cspmu_validate_event() 602 return (arm_cspmu_get_event_idx(hw_events, event) >= 0); in arm_cspmu_validate_event() 860 struct arm_cspmu_hw_events *hw_events in arm_cspmu_add() local 591 arm_cspmu_validate_event(struct pmu *pmu, struct arm_cspmu_hw_events *hw_events, struct perf_event *event) arm_cspmu_validate_event() argument 889 struct arm_cspmu_hw_events *hw_events = &cspmu->hw_events; arm_cspmu_del() local [all...] |
/kernel/linux/linux-5.10/arch/arm/kernel/ |
H A D | perf_event_xscale.c | 149 struct pmu_hw_events *cpuc = this_cpu_ptr(cpu_pmu->hw_events); in xscale1pmu_handle_irq() 209 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in xscale1pmu_enable_event() 245 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in xscale1pmu_disable_event() 304 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in xscale1pmu_start() 316 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in xscale1pmu_stop() 501 struct pmu_hw_events *cpuc = this_cpu_ptr(cpu_pmu->hw_events); in xscale2pmu_handle_irq() 555 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in xscale2pmu_enable_event() 601 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in xscale2pmu_disable_event() 667 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in xscale2pmu_start() 679 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in xscale2pmu_stop() [all...] |
H A D | perf_event_v6.c | 274 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in armv6pmu_enable_event() 310 struct pmu_hw_events *cpuc = this_cpu_ptr(cpu_pmu->hw_events); in armv6pmu_handle_irq() 366 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in armv6pmu_start() 378 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in armv6pmu_stop() 425 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in armv6pmu_disable_event() 460 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in armv6mpcore_pmu_disable_event()
|
/kernel/linux/linux-6.6/arch/arm/kernel/ |
H A D | perf_event_xscale.c | 149 struct pmu_hw_events *cpuc = this_cpu_ptr(cpu_pmu->hw_events); in xscale1pmu_handle_irq() 209 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in xscale1pmu_enable_event() 245 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in xscale1pmu_disable_event() 304 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in xscale1pmu_start() 316 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in xscale1pmu_stop() 501 struct pmu_hw_events *cpuc = this_cpu_ptr(cpu_pmu->hw_events); in xscale2pmu_handle_irq() 555 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in xscale2pmu_enable_event() 601 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in xscale2pmu_disable_event() 667 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in xscale2pmu_start() 679 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in xscale2pmu_stop() [all...] |
H A D | perf_event_v6.c | 274 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in armv6pmu_enable_event() 310 struct pmu_hw_events *cpuc = this_cpu_ptr(cpu_pmu->hw_events); in armv6pmu_handle_irq() 366 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in armv6pmu_start() 378 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in armv6pmu_stop() 425 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in armv6pmu_disable_event() 460 struct pmu_hw_events *events = this_cpu_ptr(cpu_pmu->hw_events); in armv6mpcore_pmu_disable_event()
|
/kernel/linux/linux-5.10/include/linux/perf/ |
H A D | arm_pmu.h | 88 int (*get_event_idx)(struct pmu_hw_events *hw_events, 90 void (*clear_event_idx)(struct pmu_hw_events *hw_events, 108 struct pmu_hw_events __percpu *hw_events; member
|
/kernel/linux/linux-6.6/include/linux/perf/ |
H A D | arm_pmu.h | 93 int (*get_event_idx)(struct pmu_hw_events *hw_events, 95 void (*clear_event_idx)(struct pmu_hw_events *hw_events, 112 struct pmu_hw_events __percpu *hw_events; member
|
/kernel/linux/linux-5.10/arch/csky/kernel/ |
H A D | perf_event.c | 41 struct pmu_hw_events __percpu *hw_events; member 1075 struct pmu_hw_events *hw_events = this_cpu_ptr(csky_pmu.hw_events); in csky_pmu_del() local 1080 hw_events->events[hwc->idx] = NULL; in csky_pmu_del() 1088 struct pmu_hw_events *hw_events = this_cpu_ptr(csky_pmu.hw_events); in csky_pmu_add() local 1091 hw_events->events[hwc->idx] = event; in csky_pmu_add() 1106 struct pmu_hw_events *cpuc = this_cpu_ptr(csky_pmu.hw_events); in csky_pmu_handle_irq() 1178 this_cpu_ptr(csky_pmu.hw_events)); in csky_pmu_request_irq() 1195 free_percpu_irq(irq, this_cpu_ptr(csky_pmu.hw_events)); in csky_pmu_free_irq() [all...] |
/kernel/linux/linux-6.6/arch/csky/kernel/ |
H A D | perf_event.c | 41 struct pmu_hw_events __percpu *hw_events; member 1075 struct pmu_hw_events *hw_events = this_cpu_ptr(csky_pmu.hw_events); in csky_pmu_del() local 1080 hw_events->events[hwc->idx] = NULL; in csky_pmu_del() 1088 struct pmu_hw_events *hw_events = this_cpu_ptr(csky_pmu.hw_events); in csky_pmu_add() local 1091 hw_events->events[hwc->idx] = event; in csky_pmu_add() 1106 struct pmu_hw_events *cpuc = this_cpu_ptr(csky_pmu.hw_events); in csky_pmu_handle_irq() 1178 this_cpu_ptr(csky_pmu.hw_events)); in csky_pmu_request_irq() 1195 free_percpu_irq(irq, this_cpu_ptr(csky_pmu.hw_events)); in csky_pmu_free_irq() [all...] |
/kernel/linux/linux-5.10/arch/nds32/kernel/ |
H A D | perf_event_cpu.c | 697 struct pmu_hw_events *hw_events = nds32_pmu->get_hw_events(); in nds32_pmu_enable() local 698 int enabled = bitmap_weight(hw_events->used_mask, in nds32_pmu_enable() 751 validate_event(struct pmu *pmu, struct pmu_hw_events *hw_events, in validate_event() argument 768 return nds32_pmu->get_event_idx(hw_events, event) >= 0; in validate_event() 909 struct pmu_hw_events *hw_events = nds32_pmu->get_hw_events(); in nds32_pmu_add() local 917 idx = nds32_pmu->get_event_idx(hw_events, event); in nds32_pmu_add() 929 hw_events->events[idx] = event; in nds32_pmu_add() 987 struct pmu_hw_events *hw_events = nds32_pmu->get_hw_events(); in nds32_pmu_del() local 992 hw_events->events[idx] = NULL; in nds32_pmu_del() 993 clear_bit(idx, hw_events in nds32_pmu_del() [all...] |
/kernel/linux/linux-6.6/drivers/perf/hisilicon/ |
H A D | hisi_pcie_pmu.c | 66 struct perf_event *hw_events[HISI_PCIE_MAX_COUNTERS]; member 395 sibling = pcie_pmu->hw_events[idx]; in hisi_pcie_pmu_find_related_event() 417 if (!pcie_pmu->hw_events[idx]) in hisi_pcie_pmu_get_event_idx() 563 pcie_pmu->hw_events[idx] = event; in hisi_pcie_pmu_add() 580 pcie_pmu->hw_events[hwc->idx] = NULL; in hisi_pcie_pmu_del() 590 if (pcie_pmu->hw_events[num]) in hisi_pcie_pmu_enable() 622 event = pcie_pmu->hw_events[idx]; in hisi_pcie_pmu_irq()
|
/kernel/linux/linux-5.10/arch/riscv/include/asm/ |
H A D | perf_event.h | 58 const int *hw_events; member
|