At first,
main() in vl.c will call
configure_accelerator()
QEMU Part
configure_accelerator()
accel_list[]
kvm_init()
KVMState
kvm_ioctl(KVMState *s, int type, ...)
KVM Part
Register ioctl handler
vmx_init() -> kvm_init(...) -> misc_register(kvm_dev) -> kvm.&kvm_chardev_ops
kvm_dev
kvm_chardev_ops
KVM API
The "
/dev/kvm" ioctl handler is as follows:
KVM_GET_API_VERSION
This API just return the API version of KVM. The handler just return he version of KVM.
This parameter is defined in
./include/uapi/linux/kvm.h
KVM_CREATE_VM
This API is used by QEMU to ask KVM create VM. "
KVM_CREATE_VM" definition is the same as
KVM_GET_API_VERSION.
No comments:
Post a Comment