On 21.11.2022 11:21, Roger Pau Monne wrote:
> @@ -47,6 +49,15 @@ static bool __init 
> processor_physically_present(acpi_handle handle)
>               return false;
>       }
>  
> +     if (xen_initial_domain())
> +             /*
> +              * When running as a Xen dom0 the number of processors Linux
> +              * sees can be different from the real number of processors on
> +              * the system, and we still need to execute _PDC for all of
> +              * them.
> +              */
> +             return xen_processor_present(acpi_id);
> +
>       type = (acpi_type == ACPI_TYPE_DEVICE) ? 1 : 0;
>       cpuid = acpi_get_cpuid(handle, type, acpi_id);

We had to deal with this in our XenoLinux forward ports as well, but at
the time it appeared upstream I decided to make use of acpi_get_apicid()
(which meanwhile was renamed to acpi_get_phys_id()). Wouldn't than be an
option, eliminating the need for a Xen-specific new function?

Jan

Reply via email to