• Prakash, Prashanth's avatar
    ACPI / Processor: Drop setup_max_cpus check from acpi_processor_add() · 35b68735
    Prakash, Prashanth authored
    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: default avatarPrashanth Prakash <pprakash@codeaurora.org>
    [ rjw: Subject ]
    Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
    35b68735
acpi_processor.c 17.7 KB