I did not found any precise documentation about how to configure Virtio with KVM, especially if a special configuration was needed on the host side; so here it is:

  • For the host machine you don't need anything particular apart from the correct KVM configuration.
  • For the guest virtual machine, here is an example of what you should have in your kernel configuration:

    CONFIG_VIRTIO_BLK=y
    CONFIG_VIRTIO_NET=y
    CONFIG_VIRTIO_CONSOLE=m
    CONFIG_HW_RANDOM_VIRTIO=m
    CONFIG_VIRTIO=y
    CONFIG_VIRTIO_RING=y
    CONFIG_VIRTIO_PCI=y
    CONFIG_VIRTIO_BALLOON=y