Linux Kernel KVM Host and Guest Config


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. suggests:

On the Host side:

On the Guest side: 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 for the host and 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 provides the following Guest suggestions:


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…