]> xenbits.xensource.com Git - qemu-xen.git/commitdiff
pc: acpi: clarify why possible LAPIC entries must be present in MADT
authorIgor Mammedov <imammedo@redhat.com>
Fri, 26 Feb 2016 13:59:27 +0000 (14:59 +0100)
committerMichael S. Tsirkin <mst@redhat.com>
Fri, 11 Mar 2016 14:59:12 +0000 (16:59 +0200)
Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
hw/i386/acpi-build.c

index 8736917f0b9a2bc2bb2b10ac6481a2e221792ff3..0a5acb3828612feb0f7cccf14feffef58ced2afc 100644 (file)
@@ -360,6 +360,12 @@ build_madt(GArray *table_data, GArray *linker, PCMachineState *pcms)
         if (apic_ids->cpus[i].cpu != NULL) {
             apic->flags = cpu_to_le32(1);
         } else {
+            /* ACPI spec says that LAPIC entry for non present
+             * CPU may be omitted from MADT or it must be marked
+             * as disabled. However omitting non present CPU from
+             * MADT breaks hotplug on linux. So possible CPUs
+             * should be put in MADT but kept disabled.
+             */
             apic->flags = cpu_to_le32(0);
         }
     }