[meta-intel] [PATCH] meta-intel: enable qemu and select more suitable virtual machine options

Patrick Ohly patrick.ohly at intel.com
Mon Jan 16 00:45:15 PST 2017


On Fri, 2017-01-13 at 16:11 -0800, Cal Sullivan wrote:
> Our kernel's .config has the following, will this cause any issues?
> 
> #
> # Virtio drivers
> #
> # CONFIG_VIRTIO_PCI is not set
> # CONFIG_VIRTIO_MMIO is not set

Hmm, I'm getting something different (poky 81021bc0, meta-intel 368673ea
+ patch, i.e. current master, MACHINE = intel-corei7-64):

$ grep VIRTIO tmp/work/corei7-64-intel-common-poky-linux/linux-yocto/4.8.12+gitAUTOINC+b22e477396_021b4aef55-r0/linux-corei7-64-intel-common-standard-build/.config
CONFIG_VIRTIO_BLK=y
CONFIG_SCSI_VIRTIO=y
CONFIG_VIRTIO_NET=y
CONFIG_VIRTIO_CONSOLE=y
CONFIG_HW_RANDOM_VIRTIO=y
# CONFIG_DRM_VIRTIO_GPU is not set
CONFIG_VIRTIO=y
CONFIG_VIRTIO_PCI=y
CONFIG_VIRTIO_PCI_LEGACY=y
CONFIG_VIRTIO_BALLOON=y
CONFIG_VIRTIO_INPUT=m
CONFIG_VIRTIO_MMIO=y
# CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set

"runqemu core-image-minimal ext4 intel-corei7-64" works, and the virtual
machine finds /dev/boot = /dev/vda. eth0 is also found. I've not seen a
kernel message for the virtio-rng-pci device, but I am not sure whether
there should be one.

But yes, this hinges on having virtio support in the kernel, because
runqemu sets up the virtual machine to use virtio as much as possible.

Full invocation in the case above is:

tmp/sysroots/x86_64-linux/usr/bin/qemu-system-x86_64 -device virtio-net-pci,netdev=net0,mac=52:54:00:12:34:02 -netdev tap,id=net0,ifname=tap0,script=no,downscript=no -drive file=.../tmp/deploy/images/intel-corei7-64/core-image-minimal-intel-corei7-64.ext4,if=virtio,format=raw -vga vmware -show-cursor -usb -usbdevice tablet -device virtio-rng-pci   -cpu Nehalem -m 256 -kernel .../tmp/deploy/images/intel-corei7-64/bzImage--4.8.12+git0+b22e477396_021b4aef55-r0-intel-corei7-64-20170116082102.bin -append 'root=/dev/vda rw highres=off  mem=256M ip=192.168.7.2::192.168.7.1:255.255.255.0 vga=0 uvesafb.mode_option=640x480-32 oprofile.timer=1 uvesafb.task_timeout=-1'

My expectation is that the default meta-intel machine configurations
produce "generic" kernels that work across a wide range of recent-enough
hardware, and that can and (IMHO) should include suitably configured
virtual machines. That seems to work already, as far as I can tell.

-- 
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.





More information about the meta-intel mailing list