hc
2023-12-11 d2ccde1c8e90d38cee87a1b0309ad2827f3fd30d
kernel/arch/powerpc/perf/core-fsl-emb.c
....@@ -1,13 +1,9 @@
1
+// SPDX-License-Identifier: GPL-2.0-or-later
12 /*
23 * Performance event support - Freescale Embedded Performance Monitor
34 *
45 * Copyright 2008-2009 Paul Mackerras, IBM Corporation.
56 * Copyright 2010 Freescale Semiconductor, Inc.
6
- *
7
- * This program is free software; you can redistribute it and/or
8
- * modify it under the terms of the GNU General Public License
9
- * as published by the Free Software Foundation; either version
10
- * 2 of the License, or (at your option) any later version.
117 */
128 #include <linux/kernel.h>
139 #include <linux/sched.h>
....@@ -34,19 +30,6 @@
3430 static atomic_t num_events;
3531 /* Used to avoid races in calling reserve/release_pmc_hardware */
3632 static DEFINE_MUTEX(pmc_reserve_mutex);
37
-
38
-/*
39
- * If interrupts were soft-disabled when a PMU interrupt occurs, treat
40
- * it as an NMI.
41
- */
42
-static inline int perf_intr_is_nmi(struct pt_regs *regs)
43
-{
44
-#ifdef __powerpc64__
45
- return (regs->softe & IRQS_DISABLED);
46
-#else
47
- return 0;
48
-#endif
49
-}
5033
5134 static void perf_event_interrupt(struct pt_regs *regs);
5235
....@@ -663,13 +646,6 @@
663646 struct perf_event *event;
664647 unsigned long val;
665648 int found = 0;
666
- int nmi;
667
-
668
- nmi = perf_intr_is_nmi(regs);
669
- if (nmi)
670
- nmi_enter();
671
- else
672
- irq_enter();
673649
674650 for (i = 0; i < ppmu->n_counter; ++i) {
675651 event = cpuhw->event[i];
....@@ -694,11 +670,6 @@
694670 mtmsr(mfmsr() | MSR_PMM);
695671 mtpmr(PMRN_PMGC0, PMGC0_PMIE | PMGC0_FCECE);
696672 isync();
697
-
698
- if (nmi)
699
- nmi_exit();
700
- else
701
- irq_exit();
702673 }
703674
704675 void hw_perf_event_setup(int cpu)