[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <715D42877B251141A38726ABF5CABF2C01A6B7F9FC@pdsmsx503.ccr.corp.intel.com>
Date: Tue, 21 Apr 2009 14:37:21 +0800
From: "Han, Weidong" <weidong.han@...el.com>
To: "Siddha, Suresh B" <suresh.b.siddha@...el.com>,
"mingo@...e.hu" <mingo@...e.hu>, "hpa@...or.com" <hpa@...or.com>,
"tglx@...utronix.de" <tglx@...utronix.de>
CC: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"dwmw2@...radead.org" <dwmw2@...radead.org>
Subject: RE: [patch 4/5] x2apic, IR: remove reinit_intr_remapped_IO_APIC()
Siddha, Suresh B wrote:
> When interrupt-remapping is enabled, We are relying on
> setup_IO_APIC_irqs()
> to configure remapped entries in the IO-APIC, which comes little bit
> later after enabling interrupt-remapping.
>
> Meanwhile, Restore of old io-apic entries after enabling
> interrupt-remapping will not make the interrupts through io-apic
> functional anyway.
>
> So remove unnecessary reinit_intr_remapped_IO_APIC().
>
> Signed-off-by: Suresh Siddha <suresh.b.siddha@...el.com>
> Cc: Weidong Han <weidong.han@...el.com>
> ---
>
> Index: tip/arch/x86/include/asm/io_apic.h
> ===================================================================
> --- tip.orig/arch/x86/include/asm/io_apic.h
> +++ tip/arch/x86/include/asm/io_apic.h
> @@ -166,8 +166,6 @@ extern void free_ioapic_entries(struct I
> extern int save_IO_APIC_setup(struct IO_APIC_route_entry
> **ioapic_entries); extern void mask_IO_APIC_setup(struct
> IO_APIC_route_entry **ioapic_entries); extern int
> restore_IO_APIC_setup(struct IO_APIC_route_entry **ioapic_entries);
> -extern void reinit_intr_remapped_IO_APIC(int intr_remapping,
> - struct IO_APIC_route_entry **ioapic_entries);
>
> extern void probe_nr_irqs_gsi(void);
>
> Index: tip/arch/x86/kernel/apic/apic.c
> ===================================================================
> --- tip.orig/arch/x86/kernel/apic/apic.c
> +++ tip/arch/x86/kernel/apic/apic.c
> @@ -1416,8 +1416,6 @@ end_restore:
> * IR enabling failed
> */
> restore_IO_APIC_setup(ioapic_entries);
> - else
> - reinit_intr_remapped_IO_APIC(x2apic_preenabled, ioapic_entries);
Whether IR enabling succeeds or fails, it always needs to restore old IOAPIC entries. Due to removing reinit_intr_remapped_IO_APIC here, it needs to also remove the "if (ret)" before restore_IO_APIC_setup(ioapic_entries);
Regards,
Weidong
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists