File 5ec82237-x86-extend-ISR-C6-workaround-to-Haswell.patch of Package xen.15649
# Commit b72d8870b5f68f06b083e6bfdb28f081bcb6ab3b
# Date 2020-05-22 20:04:23 +0100
# Author Andrew Cooper <andrew.cooper3@citrix.com>
# Committer Andrew Cooper <andrew.cooper3@citrix.com>
x86/idle: Extend ISR/C6 erratum workaround to Haswell
This bug was first discovered against Haswell. It is definitely affected.
(The XenServer ticket for this bug was opened on 2013-05-30 which is coming up
on 7 years old, and predates Broadwell).
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
--- a/xen/arch/x86/acpi/cpu_idle.c
+++ b/xen/arch/x86/acpi/cpu_idle.c
@@ -542,8 +542,16 @@ bool errata_c6_workaround(void)
* registers), the processor may dispatch the second interrupt (from
* the IRR bit) before the first interrupt has completed and written to
* the EOI register, causing the first interrupt to never complete.
+ *
+ * Note: Haswell hasn't had errata issued, but this issue was first
+ * discovered on Haswell hardware, and is affected.
*/
static const struct x86_cpu_id isr_errata[] = {
+ /* Haswell */
+ INTEL_FAM6_MODEL(0x3c),
+ INTEL_FAM6_MODEL(0x3f),
+ INTEL_FAM6_MODEL(0x45),
+ INTEL_FAM6_MODEL(0x46),
/* Broadwell */
INTEL_FAM6_MODEL(0x47),
INTEL_FAM6_MODEL(0x3d),