The patch titled
x86: reserve the right performance counter for the Intel PerfMon NMI
watchdog
has been removed from the -mm tree. Its filename was
reserve-the-right-performance-counter-for-the-intel-perfmon-nmi-watchdog.patch
This patch was dropped because it was merged into mainline or a subsystem tree
------------------------------------------------------
Subject: x86: reserve the right performance counter for the Intel PerfMon NMI
watchdog
From: Björn Steinbrink <[EMAIL PROTECTED]>
The Intel PerfMon NMI watchdog was using the generic reservation function
which always reserves the first performance counter. But the watchdog
actually uses the second performance counter, thus we need a specialised
function.
Signed-off-by: Björn Steinbrink <[EMAIL PROTECTED]>
Cc: Andi Kleen <[EMAIL PROTECTED]>
Cc: Stephane Eranian <[EMAIL PROTECTED]>
Cc: John Levon <[EMAIL PROTECTED]>
Cc: Philippe Elie <[EMAIL PROTECTED]>
Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
---
arch/i386/kernel/cpu/perfctr-watchdog.c | 22 ++++++++++++++++++++--
1 files changed, 20 insertions(+), 2 deletions(-)
diff -puN
arch/i386/kernel/cpu/perfctr-watchdog.c~reserve-the-right-performance-counter-for-the-intel-perfmon-nmi-watchdog
arch/i386/kernel/cpu/perfctr-watchdog.c
---
a/arch/i386/kernel/cpu/perfctr-watchdog.c~reserve-the-right-performance-counter-for-the-intel-perfmon-nmi-watchdog
+++ a/arch/i386/kernel/cpu/perfctr-watchdog.c
@@ -562,9 +562,27 @@ static int setup_intel_arch_watchdog(uns
return 1;
}
+static int intel_arch_reserve(void)
+{
+ if (!reserve_perfctr_nmi(MSR_ARCH_PERFMON_PERFCTR1))
+ return 0;
+
+ if (!reserve_evntsel_nmi(MSR_ARCH_PERFMON_EVENTSEL1)) {
+ release_perfctr_nmi(MSR_ARCH_PERFMON_PERFCTR1);
+ return 0;
+ }
+ return 1;
+}
+
+static void intel_arch_unreserve(void)
+{
+ release_evntsel_nmi(MSR_ARCH_PERFMON_EVENTSEL1);
+ release_perfctr_nmi(MSR_ARCH_PERFMON_PERFCTR1);
+}
+
static struct wd_ops intel_arch_wd_ops = {
- .reserve = single_msr_reserve,
- .unreserve = single_msr_unreserve,
+ .reserve = intel_arch_reserve,
+ .unreserve = intel_arch_unreserve,
.setup = setup_intel_arch_watchdog,
.rearm = p6_rearm,
.stop = single_msr_stop_watchdog,
_
Patches currently in -mm which might be from [EMAIL PROTECTED] are
origin.patch
replace-obscure-constructs-in-fs-block_devc.patch
replace-obscure-constructs-in-fs-block_devc-fix.patch
bd_claim_by_disk-fix-warning.patch
-
To unsubscribe from this list: send the line "unsubscribe mm-commits" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html