Meta question: What is the best upstream list for discussing ARM & KVM
issues? Or ARM & virt issues in general?
I'm trying to get stock qemu from git or qemu 1.6 to boot a guest using KVM.
My host has a 3.11.0 LPAE kernel, and it exposes a /dev/kvm device.
qemu can open this device, it gets as far as creating a KVM guest, and
that is all apparently successful. But the ioctl KVM_RUN returns -ENXIO.
ENXIO is not a documented return from the KVM_RUN API but I've looked
at the kernel code and I can't see where KVM_RUN would return ENXIO.
All places in general where ENXIO might be returned are related to the
function "irqchip_in_kernel" and the mysterious "VGIC" hardware
(which
I guess is doing interrupt routing like APIC on PCs?)
Do I have to add one of these devices to the emulation perhaps?
Does anyone have a qemu command line which reliably boots a guest using KVM?
Rich.
/usr/bin/qemu-system-arm \
-global virtio-blk-device.scsi=off \
-nodefconfig \
-nodefaults \
-nographic \
-M vexpress-a9 \
-machine accel=kvm:tcg \
-m 500 \
-no-reboot \
-kernel /home/rjones/d/libguestfs/tmp/.guestfs-1001/kernel.3268 \
-dtb /home/rjones/d/libguestfs/tmp/.guestfs-1001/dtb.3268 \
-initrd /home/rjones/d/libguestfs/tmp/.guestfs-1001/initrd.3268 \
-device virtio-scsi-device,id=scsi \
-drive
file=/home/rjones/d/libguestfs/tmp/libguestfsFZio45/scratch.1,cache=unsafe,format=raw,id=hd0,if=none
\
-device scsi-hd,drive=hd0 \
-drive
file=/home/rjones/d/libguestfs/tmp/.guestfs-1001/root.3268,snapshot=on,id=appliance,cache=unsafe,if=none
\
-device scsi-hd,drive=appliance \
-device virtio-serial-device \
-serial stdio \
-chardev
socket,path=/home/rjones/d/libguestfs/tmp/libguestfsFZio45/guestfsd.sock,id=channel0 \
-device virtserialport,chardev=channel0,name=org.libguestfs.channel.0 \
-append 'panic=1 console=ttyAMA0 udevtimeout=600 no_timer_check acpi=off
printk.time=1 cgroup_disable=memory root=/dev/sdb selinux=0 guestfs_verbose=1
TERM=xterm-256color'
error: kvm run failed No such device or address
--
Richard Jones, Virtualization Group, Red Hat
http://people.redhat.com/~rjones
virt-p2v converts physical machines to virtual machines. Boot with a
live CD or over the network (PXE) and turn machines into KVM guests.
http://libguestfs.org/virt-v2v