qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: QEMU and kvm on big.LITTLE aarch64


From: Peter Maydell
Subject: Re: QEMU and kvm on big.LITTLE aarch64
Date: Tue, 27 Oct 2020 21:16:43 +0000

On Tue, 27 Oct 2020 at 20:28, Michal Schulz <michal.schulz@gmx.de> wrote:
> Recently I have attempted to to run qemu-system-aarch64, version 5.1.0, on an 
> aarch64 machine. It is Pinebook Pro with RK3399 big.LITTLE SOC, running 
> Manjaro linux, kernel version 5.9.1-3. When using tcg everything works just 
> fine, but as slow as I would expect it. In order to give it some speed I’ve 
> attempted to enable kvm there. Unfortunately, all I get is following:
>
> # qemu-system-aarch64 -M raspi3 -enable kvm
> qmeu-system-aarch64: /build/qemu/src/qemu-5.1.0/exec.c:850: 
> cpu_address_space_init: Assertion `aside == 0 || !kvm_enabled()` failed.

This is an unhelpful message, so apologies for that, but the underlying
cause is that the raspi3 machine model doesn't support KVM. You need to
use the 'virt' model instead if you want to use KVM.

(This is because the raspi3 machine needs to use a guest CPU
which emulates EL3/TrustZone and EL2/Virtualization; KVM can't
emulate CPUs with those features.)

> Of course, KVM is enabled in linux kernel. Please note that use of '-cpu 
> host' parameter does not change anything. Also, attempt to define the CPU 
> affinity for qemu using taskset tool has no influence on this behaviour.

You will need to ensure (via taskset or otherwise) that all
the threads for vCPUs end up on the same kind of CPU (if you
don't do that then you'll run into that problem once you try
with the 'virt' board, probably as a "kvm_init_vcpu failed" error).

thanks
-- PMM



reply via email to

[Prev in Thread] Current Thread [Next in Thread]