On Tue, Dec 13, 2016 at 10:36:01AM +0000, Peter Maydell wrote: > This patchset adds support for the Virtualization extensions to QEMU's > GICv3 emulation. This was the last missing piece that was stopping > us from turning on the EL2 support in the CPU model, so the patchset > also adds support for enabling it all on the virt board via the > '-machine virtualization=on' option. > > The result works well enough to allow booting a KVM outer guest kernel > and then running QEMU + an inner guest under KVM inside it. The outer > guest KVM also passes the kvm-unit-tests GIC tests. >
I've started some testing with this. When I boot an outer (L1) kernel with more than one cpu allocated I get [ 3.441908] CPU: CPUs started in inconsistent modes [ 3.442787] ------------[ cut here ]------------ [ 3.445434] WARNING: CPU: 0 PID: 1 at arch/arm64/kernel/smp.c:418 smp_cpus_done+0x80/0xa0 ... and KVM does not init. Booting with only one cpu I see we do start in EL2 and KVM does init. I'm booting the L1 kernel through UEFI (AAVMF). Also, my L1 guest kernel is 4.9 based, but not pure upstream. I can try a more pure 4.9 kernel with a defconfig later. Thanks, drew