Port-arm archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Predictable CPU discovery (was: Re: CVS commit: src/sys/arch/aarch64/aarch64)
On Jul 3, 2020, at 11:33 AM, Jason Thorpe <thorpej%me.com@localhost> wrote:
>
> Moving to port-arm@.
>
>> On Jul 2, 2020, at 11:37 AM, Jared McNeill <jmcneill%invisible.ca@localhost> wrote:
>>
>> I think this will have issues on some big.LITTLE configurations like Rockchip RK3399.
>>
>> In the RK3399 case cpu[0-3] is VIPT I$ and cpu[4-5] is PIPT I$. Boot order of secondaries is not guaranteed so it is possible to get different values of aarch64_cache_vindexsize from one boot to the next.
>
> But that could be changed!
>
> The Alpha port, for example, ensures predictable ordering and discovery of CPU properties in a predictable way from boot-to-boot.
>
> It does this by booting the secondaries one at a time as they're discovered in the PCS table, letting them announce their extensions, etc., but then spin waiting to be released.
>
> cpu_boot_secondary_processors() then simply sets a couple of bits to notify the waiting CPUs that they can move ahead.
Considering that we define MAXCPUS=256 for Arm64 and will likely need to bump that limit in the near future, what kind of impact will this have on boot times of large systems?
Home |
Main Index |
Thread Index |
Old Index