]> git.baikalelectronics.ru Git - kernel.git/commit
KVM: ARM: Fix calculation of virtual CPU ID
authorJonathan Austin <jonathan.austin@arm.com>
Thu, 26 Sep 2013 15:49:27 +0000 (16:49 +0100)
committerChristoffer Dall <christoffer.dall@linaro.org>
Sun, 13 Oct 2013 00:44:39 +0000 (17:44 -0700)
commitdd772289297096a9721c24778b5d8a88947f96fe
tree85f1e2c1147fde717ddae7823174dfa92ce9baae
parentff0cfeb8ef26aed65be86c68bd4b9316a973d15c
KVM: ARM: Fix calculation of virtual CPU ID

KVM does not have a notion of multiple clusters for CPUs, just a linear
array of CPUs. When using a system with cores in more than one cluster, the
current method for calculating the virtual MPIDR will leak the (physical)
cluster information into the virtual MPIDR. One effect of this is that
Linux under KVM fails to boot multiple CPUs that aren't in the 0th cluster.

This patch does away with exposing the real MPIDR fields in favour of simply
using the virtual CPU number (but preserving the U bit, as before).

Signed-off-by: Jonathan Austin <jonathan.austin@arm.com>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
arch/arm/kvm/coproc_a15.c