Hi everyone,

On 2/26/2024 6:43 PM, Michal Orzel wrote:
  xen/arch/arm/smpboot.c | 6 +++++-
  1 file changed, 5 insertions(+), 1 deletion(-)

+    /* PE not implemented using a multithreading type approach. */
+    if ( system_cpuinfo.mpidr.mt == 0 )
Do we need this check? It mt was true, cpu_sibling_mask would be incorrect
anyway (it would still be 1).
I added this check for playing safe, because I only want to do the correct thing
in this patch and avoid make things worse for MT case. With this patch, non-MT
case can be improved and the MT case is remain unchanged.

But I agree with you, and I would be more than happy if I can run a MT setup and
finish the "else" part with this patch or follow-ups. Do you know maybe qemu can
allow me to emulate a MT setup so that I can fix it properly in v2? Thanks!
A65 is the only Arm CPU with SMT and I'm not aware of Qemu being able to 
emulate it.
AFAICT, in Xen on Arm we assume no SMT, hence my question about your check. 
With or without it,
some parts would still be incorrect (like cpu_sibling_mask), so what's the 
point in having a partial check.
I would keep your solution without the check. Others may have a different 
opinion though.

Since there isn't much discussion followed-up in this thread, I am wondering do we have more inputs/opinions on this topic? If everyone agrees, I've followed Michal's suggestion in v2 [1].

[1] https://lore.kernel.org/xen-devel/[email protected]/

Kind regards,
Henry

~Michal


Reply via email to