i386: speedup touch_nmi_watchdog

Avoid dirtying remote cpu's memory if it already has the correct value.

Cc: Andi Kleen <ak@suse.de>
Cc: Konrad Rzeszutek <konrad@darnok.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Andrew Morton 2007-07-17 04:03:57 -07:00 committed by Linus Torvalds
parent 1c978b935e
commit f2890255b0

View file

@ -295,7 +295,7 @@ static unsigned int
last_irq_sums [NR_CPUS], last_irq_sums [NR_CPUS],
alert_counter [NR_CPUS]; alert_counter [NR_CPUS];
void touch_nmi_watchdog (void) void touch_nmi_watchdog(void)
{ {
if (nmi_watchdog > 0) { if (nmi_watchdog > 0) {
unsigned cpu; unsigned cpu;
@ -304,8 +304,10 @@ void touch_nmi_watchdog (void)
* Just reset the alert counters, (other CPUs might be * Just reset the alert counters, (other CPUs might be
* spinning on locks we hold): * spinning on locks we hold):
*/ */
for_each_present_cpu (cpu) for_each_present_cpu(cpu) {
alert_counter[cpu] = 0; if (alert_counter[cpu])
alert_counter[cpu] = 0;
}
} }
/* /*