|
@@ -170,6 +170,9 @@ static int acpi_processor_hotadd_init(struct acpi_processor *pr)
|
|
|
acpi_status status;
|
|
|
int ret;
|
|
|
|
|
|
+ if (pr->apic_id == -1)
|
|
|
+ return -ENODEV;
|
|
|
+
|
|
|
status = acpi_evaluate_integer(pr->handle, "_STA", NULL, &sta);
|
|
|
if (ACPI_FAILURE(status) || !(sta & ACPI_STA_DEVICE_PRESENT))
|
|
|
return -ENODEV;
|
|
@@ -260,10 +263,8 @@ static int acpi_processor_get_info(struct acpi_device *device)
|
|
|
}
|
|
|
|
|
|
apic_id = acpi_get_apicid(pr->handle, device_declaration, pr->acpi_id);
|
|
|
- if (apic_id < 0) {
|
|
|
+ if (apic_id < 0)
|
|
|
acpi_handle_debug(pr->handle, "failed to get CPU APIC ID.\n");
|
|
|
- return -ENODEV;
|
|
|
- }
|
|
|
pr->apic_id = apic_id;
|
|
|
|
|
|
cpu_index = acpi_map_cpuid(pr->apic_id, pr->acpi_id);
|