All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] x86/apic: Justification for disabling IO APIC before Local APIC
@ 2013-12-05  0:07 Fenghua Yu
  2013-12-05  3:36 ` [tip:x86/urgent] x86/apic, doc: " tip-bot for Fenghua Yu
  2013-12-05  8:54 ` [PATCH] x86/apic: " Ingo Molnar
  0 siblings, 2 replies; 4+ messages in thread
From: Fenghua Yu @ 2013-12-05  0:07 UTC (permalink / raw)
  To: Ingo Molnar, H. Peter Anvin, Thomas Gleixner
  Cc: linux-kernel, x86, Fenghua Yu

From: Fenghua Yu <fenghua.yu@intel.com>

Since erratum AVR31 in "Intel Atom Processor C2000 Product Family
Specification Update" is published, I add a justification comment for
disabling IO APIC before Local APIC (commit 522e6646).

Signed-off-by: Fenghua Yu <fenghua.yu@intel.com>
---
 arch/x86/kernel/reboot.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/arch/x86/kernel/reboot.c b/arch/x86/kernel/reboot.c
index da3c599..c752cb4 100644
--- a/arch/x86/kernel/reboot.c
+++ b/arch/x86/kernel/reboot.c
@@ -558,6 +558,17 @@ void native_machine_shutdown(void)
 {
 	/* Stop the cpus and apics */
 #ifdef CONFIG_X86_IO_APIC
+	/*
+	 * Disabling IO APIC before local APIC is a workaround for
+	 * erratum AVR31 in "Intel Atom Processor C2000 Product Family
+	 * Specification Update". In this situation, interrupts that target
+	 * a Logical Processor whose Local APIC is either in the process of
+	 * being hardware disabled or software disabled are neither delivered
+	 * nor discarded. When this erratum occurs, the processor may hang.
+	 *
+	 * Even without the erratum, it still makes sense to quiet IO APIC
+	 * before disabling Local APIC.
+	 */
 	disable_IO_APIC();
 #endif
 
-- 
1.8.1.2


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2013-12-05 13:27 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-12-05  0:07 [PATCH] x86/apic: Justification for disabling IO APIC before Local APIC Fenghua Yu
2013-12-05  3:36 ` [tip:x86/urgent] x86/apic, doc: " tip-bot for Fenghua Yu
2013-12-05  8:54 ` [PATCH] x86/apic: " Ingo Molnar
2013-12-05 13:27   ` Yu, Fenghua

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.