I’ve been using KVM for a while now. However, I do not understand some of the kernel configuration options. I’m not sure which options are for the host side, for the guest side, or for both sides. I’m running the same OS (Gentoo kernel 3.4.9) on both sides and want to take advantage of any code that boosts performance. For example, I’m using the virtio devices.
https://wiki.archlinux.org/index.php/KVM suggests:
On the Host side:
kvm_intel (or kvm_amd. However, I have an Intel).
On the Guest side:
virtio_pci, virtio_blk, virtio_net, and virtio_ring
http://en.gentoo-wiki.com/wiki/KVM says nothing about client configuration. However, for host, it suggests:
<M> KVM for Intel processors support
*] KVM paravirtualized clock
*] KVM Guest support
-*- Enable paravirtualization code
*] Paravirtualization layer for spinlocks
*] Enable KSM for page merging
http://wiki.gentoo.org/wiki/KVM for the host and http://wiki.gentoo.org/wiki/QEMU/Linux_guest for the guest suggests:
On the Host side:
<*> KVM for Intel processors support
<*> Host kernel accelerator for virtio net
On the Guest side:
*] KVM paravirtualized clock
*] KVM Guest support
<*> PCI driver for virtio devices
<*> Virtio block driver
<*> Virtio network driver
http://forums.funtoo.org/viewtopic.php?id=1581 provides the following Guest suggestions:
CONFIG_VIRTIO_BLK=y
CONFIG_SCSI_VIRTIO=y
CONFIG_VIRTIO_NET=y
CONFIG_VIRTIO_CONSOLE=y
CONFIG_HW_RANDOM_VIRTIO=y
CONFIG_VIRTIO=y
CONFIG_VIRTIO_RING=y
CONFIG_VIRTIO_PCI=y
CONFIG_VIRTIO_BALLOON=y
CONFIG_VIRTIO_MMIO=y
My question mainly revolves around KVM paravirtualized clock and KVM Guest support. The kernel description of the clock says
and Guest support says
Both suggest to me that this is something that should be configured on the guest. However, from above, I found references that show them configured on the host, and several that didn’t show them configured at all. So, which kernel options should be set up on the host, which the guest, and which (if any) on both?
Thanks for any suggestions or clarifications. Documentation on KVM is confusing…