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.
After seeing that multiple cpus didn't work with Linux, I modified my EL2 supporting kvm-unit-tests branch to also output what level each cpu starts in. I see the same issue - only cpu0 starts in El2. Here's the new kvm-unit-tests branch https://github.com/rhdrjones/kvm-unit-tests/commits/arm64/hyp-test $ ./configure --arch=arm64 --cross-prefix=aarch64-linux-gnu- $ make $ arm/run arm/hyp-mode.flat -smp 4 -machine virtualization=on INFO: cpu1 did not start in HYP INFO: cpu2 did not start in HYP INFO: cpu3 did not start in HYP INFO: cpu0 started in HYP FAIL: HYP start Thanks, drew