x86, nmi_watchdog: Remove all stub function calls from old nmi_watchdog
Now that the bulk of the old nmi_watchdog is gone, remove all the stub variables and hooks associated with it. This touches lots of files mainly because of how the io_apic nmi_watchdog was implemented. Now that the io_apic nmi_watchdog is forever gone, remove all its fingers. Most of this code was not being exercised by virtue of nmi_watchdog != NMI_IO_APIC, so there shouldn't be anything to risky here. Signed-off-by: Don Zickus <dzickus@redhat.com> Cc: fweisbec@gmail.com Cc: gorcunov@openvz.org LKML-Reference: <1289578944-28564-3-git-send-email-dzickus@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
@@ -54,7 +54,6 @@
|
||||
#include <asm/dma.h>
|
||||
#include <asm/timer.h>
|
||||
#include <asm/i8259.h>
|
||||
#include <asm/nmi.h>
|
||||
#include <asm/msidef.h>
|
||||
#include <asm/hypertransport.h>
|
||||
#include <asm/setup.h>
|
||||
@@ -2643,24 +2642,6 @@ static void lapic_register_intr(int irq)
|
||||
"edge");
|
||||
}
|
||||
|
||||
static void __init setup_nmi(void)
|
||||
{
|
||||
/*
|
||||
* Dirty trick to enable the NMI watchdog ...
|
||||
* We put the 8259A master into AEOI mode and
|
||||
* unmask on all local APICs LVT0 as NMI.
|
||||
*
|
||||
* The idea to use the 8259A in AEOI mode ('8259A Virtual Wire')
|
||||
* is from Maciej W. Rozycki - so we do not have to EOI from
|
||||
* the NMI handler or the timer interrupt.
|
||||
*/
|
||||
apic_printk(APIC_VERBOSE, KERN_INFO "activating NMI Watchdog ...");
|
||||
|
||||
enable_NMI_through_LVT0();
|
||||
|
||||
apic_printk(APIC_VERBOSE, " done.\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* This looks a bit hackish but it's about the only one way of sending
|
||||
* a few INTA cycles to 8259As and any associated glue logic. ICR does
|
||||
@@ -2766,15 +2747,6 @@ static inline void __init check_timer(void)
|
||||
*/
|
||||
apic_write(APIC_LVT0, APIC_LVT_MASKED | APIC_DM_EXTINT);
|
||||
legacy_pic->init(1);
|
||||
#ifdef CONFIG_X86_32
|
||||
{
|
||||
unsigned int ver;
|
||||
|
||||
ver = apic_read(APIC_LVR);
|
||||
ver = GET_APIC_VERSION(ver);
|
||||
timer_ack = (nmi_watchdog == NMI_IO_APIC && !APIC_INTEGRATED(ver));
|
||||
}
|
||||
#endif
|
||||
|
||||
pin1 = find_isa_irq_pin(0, mp_INT);
|
||||
apic1 = find_isa_irq_apic(0, mp_INT);
|
||||
@@ -2822,10 +2794,6 @@ static inline void __init check_timer(void)
|
||||
unmask_ioapic(cfg);
|
||||
}
|
||||
if (timer_irq_works()) {
|
||||
if (nmi_watchdog == NMI_IO_APIC) {
|
||||
setup_nmi();
|
||||
legacy_pic->unmask(0);
|
||||
}
|
||||
if (disable_timer_pin_1 > 0)
|
||||
clear_IO_APIC_pin(0, pin1);
|
||||
goto out;
|
||||
@@ -2851,11 +2819,6 @@ static inline void __init check_timer(void)
|
||||
if (timer_irq_works()) {
|
||||
apic_printk(APIC_QUIET, KERN_INFO "....... works.\n");
|
||||
timer_through_8259 = 1;
|
||||
if (nmi_watchdog == NMI_IO_APIC) {
|
||||
legacy_pic->mask(0);
|
||||
setup_nmi();
|
||||
legacy_pic->unmask(0);
|
||||
}
|
||||
goto out;
|
||||
}
|
||||
/*
|
||||
@@ -2867,15 +2830,6 @@ static inline void __init check_timer(void)
|
||||
apic_printk(APIC_QUIET, KERN_INFO "....... failed.\n");
|
||||
}
|
||||
|
||||
if (nmi_watchdog == NMI_IO_APIC) {
|
||||
apic_printk(APIC_QUIET, KERN_WARNING "timer doesn't work "
|
||||
"through the IO-APIC - disabling NMI Watchdog!\n");
|
||||
nmi_watchdog = NMI_NONE;
|
||||
}
|
||||
#ifdef CONFIG_X86_32
|
||||
timer_ack = 0;
|
||||
#endif
|
||||
|
||||
apic_printk(APIC_QUIET, KERN_INFO
|
||||
"...trying to set up timer as Virtual Wire IRQ...\n");
|
||||
|
||||
|
Reference in New Issue
Block a user