ACPI / Processor: Drop setup_max_cpus check from acpi_processor_add()
When maxcpus=X kernel argument is used, we parse the ACPI tables only for the first X cpus. The per-cpu ACPI data include the _PSD tables which gives information about related cpus. cppc_cpufreq and acpi-cpufreq parses the table once during init to deduce the related cpus. If a user brings a new cpu online after boot the related cpu data becomes incorrect. acpi_get_psd_map() in acpi_cppc.c returns error if it fails to find the parsed ACPI data for possible CPU resulting in cppc_cpufreq initialization failure. With this change we will probe all possible CPUs prior to cpufreq initialization, but will bring only setup_max_cpus online. nr_cpus kernel parameter can be used to restict even parsing per-cpu ACPI tables. Signed-off-by: Prashanth Prakash <pprakash@codeaurora.org> [ rjw: Subject ] Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
parent
4f7d029b9b
commit
35b6873598
|
@ -388,11 +388,6 @@ static int acpi_processor_add(struct acpi_device *device,
|
|||
if (result) /* Processor is not physically present or unavailable */
|
||||
return 0;
|
||||
|
||||
#ifdef CONFIG_SMP
|
||||
if (pr->id >= setup_max_cpus && pr->id != 0)
|
||||
return 0;
|
||||
#endif
|
||||
|
||||
BUG_ON(pr->id >= nr_cpu_ids);
|
||||
|
||||
/*
|
||||
|
|
Loading…
Reference in New Issue