qemu-discuss
[Top][All Lists]
Advanced

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

Re: Invalid accelerator kvm / error: kvm run failed Function not impleme


From: Mario Marietto
Subject: Re: Invalid accelerator kvm / error: kvm run failed Function not implemented ERRORS trying to virtualize a guest OS on the ARM Chromebook running with a relatively recent kernel version and KVM enabled
Date: Thu, 10 Aug 2023 19:52:37 +0200

---> You can't use KVM with the vexpress-a15 board. The only Arm guest machine that will work with KVM is the "virt" board.

ok,I tried -M virt like this :

qemu-system-arm \
    -enable-kvm -serial stdio -kernel zImage \
    -m 512 -M virt -cpu cortex-a15 \

but I've got the same error : qemu-system-arm: invalid accelerator kvm

On Thu, Aug 10, 2023 at 7:27 PM Mario Marietto <marietto2008@gmail.com> wrote:
---> You can't use KVM with the vexpress-a15 board. The only Arm guest machine that will work with KVM is the "virt" board.

point 1)

On the virtual open systems website they used the vexpress-a15 board. You can read by yourself what they say :

The guests that we will create later will be based on the Versatile Express QEMU machine model. For we will use a different kernel branch specific to that platform:


$
git checkout origin/kvm-vexpress-3.9 $ curl http://www.virtualopensystems.com/downloads/guides/kvm_on_chromebook/guest-config > .config $ ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make zImage dtbs -j4


Then we can append the dtb file to the kernel image with:


$ cat arch/arm/boot/dts/rtsm_ve-cortex_a15x1.dtb >> arch/arm/boot/zImage


That way we only need to handle one file. Make sure to copy arch/arm/boot/zImage for later usage.


point 2) 


On the devuan 4 host os that I have installed I'm using kernel 5.4,that's lower than 5.7,so the qemu support for it should be there. 


point 3)


if I use the "virt" board,does the KVM acceleration work ?


thanks.


On Thu, Aug 10, 2023 at 7:07 PM Peter Maydell <peter.maydell@linaro.org> wrote:
On Thu, 10 Aug 2023 at 17:52, Mario Marietto <marietto2008@gmail.com> wrote:

> I conducted some further experiments :
>
> In this example I've used qemu 5.2.0 installed by default by the devuan 4 :
>
>
> qemu-system-arm \
>     -enable-kvm -serial stdio -kernel zImage \
>     -m 512 -M vexpress-a15 -cpu cortex-a15 \
>     -drive file=/mnt/fisso/bhyve/img/Linux/ubuntu2210.img,id=virtio-blk,if=none \
>     -device virtio-blk,drive=virtio-blk,transport=virtio-mmio.0 \
>     -device virtio-net,transport=virtio-mmio.1,netdev=net0,mac="52:54:00:12:34:55" \
>     -netdev type=user,id=net0 \
>     -append "earlyprintk=ttyAMA0 console=ttyAMA0 mem=512M \
>              virtio_mmio.device=1M@0x4e000000:74:0 \
>              virtio_mmio.device=1M@0x4e100000:75:1 \
>              root=/dev/vda rw ip=dhcp --no-log"
>
> qemu-system-arm: invalid accelerator kvm.

You can't use KVM with the vexpress-a15 board. The only
Arm guest machine that will work with KVM is the "virt"
board.

Further, it looks like your host CPU is 32-bit. QEMU 5.2
dropped support for running KVM on 32-bit hosts, because this
support was dropped from host kernels in kernel version 5.7.

Basically, 32-bit hosts are just too small to do anything
sensible with virtual machines, which is why the kernel
(and in turn QEMU) dropped that support. If you want
to play around with Arm virtualization, use a 64-bit host.
(64-bit hosts can still use KVM to virtualize 32-bit
guests if you want 32-bit guests.)

thanks
-- PMM


--
Mario.


--
Mario.

reply via email to

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