On Thu, 18 Jan 2024 at 20:07, Philippe Mathieu-Daudé <phi...@linaro.org> wrote: > > From: Richard Henderson <richard.hender...@linaro.org> > > Rename to arm_build_mp_affinity. This frees up the name for > other usage, and emphasizes that the cpu object is not involved. > > Signed-off-by: Richard Henderson <richard.hender...@linaro.org> > Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Hi; I just had cause to re-look at this commit. The problem here is that to determine the right MP affinity value the CPU *should* be involved. This is because for some Arm CPUs the MPIDR MT bit is 0, and the CPU number is in Aff0, but for others the MPIDR MT bit is 1, and the CPU number is in Aff1, and Aff0 is 0. We don't currently model the latter CPUs correctly, treating everything as MT=0, but we should. So really arm_build_mp_affinity() ought to take a CPU argument (which is awkward because we don't always have one to hand at the callsite)... thanks -- PMM