diff options
Diffstat (limited to 'drivers/acpi/processor_core.c')
| -rw-r--r-- | drivers/acpi/processor_core.c | 6 | 
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/acpi/processor_core.c b/drivers/acpi/processor_core.c index c850de4c9a1..eff722278ff 100644 --- a/drivers/acpi/processor_core.c +++ b/drivers/acpi/processor_core.c @@ -189,10 +189,12 @@ int acpi_get_cpuid(acpi_handle handle, int type, u32 acpi_id)  		 *     Processor (CPU3, 0x03, 0x00000410, 0x06) {}  		 * }  		 * -		 * Ignores apic_id and always return 0 for CPU0's handle. +		 * Ignores apic_id and always returns 0 for the processor +		 * handle with acpi id 0 if nr_cpu_ids is 1. +		 * This should be the case if SMP tables are not found.  		 * Return -1 for other CPU's handle.  		 */ -		if (acpi_id == 0) +		if (nr_cpu_ids <= 1 && acpi_id == 0)  			return acpi_id;  		else  			return apic_id;  |