[PATCH] ARM: KVM: iterate over all CPUs for CPU compatibility check

Christoffer Dall cdall at cs.columbia.edu
Tue Apr 16 11:59:22 EDT 2013


On Mon, Apr 15, 2013 at 2:52 AM, Alexander Spyridakis
<a.spyridakis at virtualopensystems.com> wrote:
> On 15 April 2013 11:39, Andre Przywara <andre.przywara at linaro.org> wrote:
>>
>> > [Q: does
>> >     all the hyp mode code have to also run on the A15s or
>> >     is it A7-safe?]
>>
>> Good point. It seems like the code hangs in init_hyp_mode().
>> Will do more debugging in there now.
>
>
> I've run on this problem before, while trying to run KVM guests on A7 cores.
>
> For some reason the 3rd A7 hangs in arch/arm/kvm/init.S, on the instruction
> that updates HSCTLR between the two isbs on __do_hyp_init (mcr p15, 4, r0,
> c1, c0, 0). If you boot the system with maxcpus=4 then init_hyp_mode() will
> not hang on the A7 cluster. Other than that from my limited testing KVM on
> A7 works on a usual linux guest. I also tried to only boot the 3rd A7 core
> to rule out any racing issues, but still the same behaviour applies.
>
You lost me on the maxcpus=4 and racing point here. If it works with
maxcpus=4 then it works with two A7s, right? Why would running with
maxcpus=3 (ie. one A7) rule out any race condition?

-Christoffer



More information about the linux-arm-kernel mailing list