|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [RFC PATCH 3/4] xen/arm: Sanitize cpuinfo ID registers fields
On 16/07/2021 18:14, Bertrand Marquis wrote: Hi Julien Hi Bertrand, […] While I agree this is not useful today, the idea is we can find easily what features each processor supports. This could be useful if we wanted to expose big.LITTLE to the guest. For instance, imagine you have a system where some processor may support 32-bit EL1 only on some processor. With a global approach, we would say "32-bit EL1 is not supported". That would prevent a user to use the system to its full advantage. Note that I am not asking to implement such things today... This is more to show that we will likely want to keep the per-CPU info around. The system_cpuinfo could be used for system wide decision in Xen (e.g. P2M size, cacheline size....) while the per-CPU could be used to enable features only used by a couple of CPUs. So I am wondering if we should not reduce a bit the amount of global data and: How much are we talking? - introduce a global system_cpuinfo - remove cpu_data[] and use a temp structure in the stack of the cpu booting - read midr directly in vcpreg - use boot_cpu_data in errata for csv2 This would not be quite the same. You may have a system where not all processors have ID_AA64PFR0_EL1.CSV2 is set, yet we want to avoid setting the hardening vector on process with the bit set to reduce the overhead. Cheers, -- Julien Grall
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |