• Lin Ming's avatar
    ACPI: processor: fix acpi_get_cpuid for UP processor · d640113f
    Lin Ming authored
    For UP processor, it is likely that no _MAT method or MADT table defined.
    So currently acpi_get_cpuid(...) always return -1 for UP processor.
    This is wrong. It should return valid value for CPU0.
    
    In the other hand, BIOS may define multiple CPU handles even for UP
    processor, for example
    
            Scope (_PR)
            {
                Processor (CPU0, 0x00, 0x00000410, 0x06) {}
                Processor (CPU1, 0x01, 0x00000410, 0x06) {}
                Processor (CPU2, 0x02, 0x00000410, 0x06) {}
                Processor (CPU3, 0x03, 0x00000410, 0x06) {}
            }
    
    We should only return valid value for CPU0's acpi handle.
    And return invalid value for others.
    
    http://marc.info/?t=132329819900003&r=1&w=2
    
    Cc: stable@vger.kernel.org
    Reported-and-tested-by: wallak@free.fr
    Signed-off-by: default avatarLin Ming <ming.m.lin@intel.com>
    Signed-off-by: default avatarLen Brown <len.brown@intel.com>
    d640113f
processor_core.c 8.89 KB