diff options
| -rw-r--r-- | drivers/acpi/processor_core.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/drivers/acpi/processor_core.c b/drivers/acpi/processor_core.c index 9eeda9e437ea..18fa6337c12c 100644 --- a/drivers/acpi/processor_core.c +++ b/drivers/acpi/processor_core.c | |||
| @@ -66,22 +66,16 @@ static int map_x2apic_id(struct acpi_subtable_header *entry, | |||
| 66 | { | 66 | { |
| 67 | struct acpi_madt_local_x2apic *apic = | 67 | struct acpi_madt_local_x2apic *apic = |
| 68 | (struct acpi_madt_local_x2apic *)entry; | 68 | (struct acpi_madt_local_x2apic *)entry; |
| 69 | u32 tmp = apic->local_apic_id; | ||
| 70 | 69 | ||
| 71 | /* Only check enabled APICs*/ | ||
| 72 | if (!(apic->lapic_flags & ACPI_MADT_ENABLED)) | 70 | if (!(apic->lapic_flags & ACPI_MADT_ENABLED)) |
| 73 | return 0; | 71 | return 0; |
| 74 | 72 | ||
| 75 | /* Device statement declaration type */ | 73 | if (device_declaration && (apic->uid == acpi_id)) { |
| 76 | if (device_declaration) { | 74 | *apic_id = apic->local_apic_id; |
| 77 | if (apic->uid == acpi_id) | 75 | return 1; |
| 78 | goto found; | ||
| 79 | } | 76 | } |
| 80 | 77 | ||
| 81 | return 0; | 78 | return 0; |
| 82 | found: | ||
| 83 | *apic_id = tmp; | ||
| 84 | return 1; | ||
| 85 | } | 79 | } |
| 86 | 80 | ||
| 87 | static int map_lsapic_id(struct acpi_subtable_header *entry, | 81 | static int map_lsapic_id(struct acpi_subtable_header *entry, |
