aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/acpi')
-rw-r--r--drivers/acpi/processor_core.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/drivers/acpi/processor_core.c b/drivers/acpi/processor_core.c
index 626c75479868..9eeda9e437ea 100644
--- a/drivers/acpi/processor_core.c
+++ b/drivers/acpi/processor_core.c
@@ -50,12 +50,15 @@ static int map_lapic_id(struct acpi_subtable_header *entry,
50{ 50{
51 struct acpi_madt_local_apic *lapic = 51 struct acpi_madt_local_apic *lapic =
52 (struct acpi_madt_local_apic *)entry; 52 (struct acpi_madt_local_apic *)entry;
53 if ((lapic->lapic_flags & ACPI_MADT_ENABLED) && 53
54 lapic->processor_id == acpi_id) { 54 if (!(lapic->lapic_flags & ACPI_MADT_ENABLED))
55 *apic_id = lapic->id; 55 return 0;
56 return 1; 56
57 } 57 if (lapic->processor_id != acpi_id)
58 return 0; 58 return 0;
59
60 *apic_id = lapic->id;
61 return 1;
59} 62}
60 63
61static int map_x2apic_id(struct acpi_subtable_header *entry, 64static int map_x2apic_id(struct acpi_subtable_header *entry,