Skip to content

Commit ea0e017

Browse files
lyctwpalmer-dabbelt
authored andcommitted
perf: RISC-V: Eliminate redundant interrupt enable/disable operations
The interrupt enable/disable operations are already performed by the IRQ chip functions riscv_intc_irq_unmask()/riscv_intc_irq_mask() during enable_percpu_irq()/disable_percpu_irq(). It can be done only once. Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com> Reviewed-by: Atish Patra <atishp@rivosinc.com> Link: https://lore.kernel.org/r/20240222083946.3977135-7-peterlin@andestech.com Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
1 parent 95113bb commit ea0e017

File tree

1 file changed

+0
-2
lines changed

1 file changed

+0
-2
lines changed

drivers/perf/riscv_pmu_sbi.c

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -781,7 +781,6 @@ static int pmu_sbi_starting_cpu(unsigned int cpu, struct hlist_node *node)
781781
if (riscv_pmu_use_irq) {
782782
cpu_hw_evt->irq = riscv_pmu_irq;
783783
csr_clear(CSR_IP, BIT(riscv_pmu_irq_num));
784-
csr_set(CSR_IE, BIT(riscv_pmu_irq_num));
785784
enable_percpu_irq(riscv_pmu_irq, IRQ_TYPE_NONE);
786785
}
787786

@@ -792,7 +791,6 @@ static int pmu_sbi_dying_cpu(unsigned int cpu, struct hlist_node *node)
792791
{
793792
if (riscv_pmu_use_irq) {
794793
disable_percpu_irq(riscv_pmu_irq);
795-
csr_clear(CSR_IE, BIT(riscv_pmu_irq_num));
796794
}
797795

798796
/* Disable all counters access for user mode now */

0 commit comments

Comments
 (0)