Re: KVM_SET_MP_STATE is undocumented

Avi Kivity
2010-04-26T13:21:54Z

On 04/26/2010 10:48 AM, Pekka Enberg wrote:
> Two more interesting but undocumented ioctls:
>
> - KVM_SET_IDENTITY_MAP_ADDR
> - KVM_SET_BOOT_CPU_ID

I'll post patches.

> Little background: we're debugging a KVM_EXIT_UNKNOWN problem for the
> "largest bug-free kernel" on Core i5 machine. I've been looking at
> plain QEMU sources but it seems "qemu-kvm" that the person is using
> does much more during initialization. Do we have a known good list of
> mandatory steps required to properly initialize KVM on all CPUs?

KVM_GET_API_VERSION (unless you're sure you aren't running on 2.6.20 or
2.6.21)
KVM_CREATE_VM
KVM_SET_USER_MEMORY_REGION
KVM_CREATE_VCPU
KVM_SET_TSS_ADDR
KVM_SET_IDENTITY_MAP_ADDR (really only needed on EPT machines, but
recommended to invoke on all hosts)
KVM_CREATE_IRQCHIP (optional; if you want in-kernel lapic/ioapic/pic)
KVM_SET_CPUID2
KVM_RUN

qemu also initializes all the vcpu state from its own values and has
elaborate memory setup.

--
error compiling committee.c: too many arguments to function