KVM Paravirtual ABI
include/virt/kvm_para.h View source View on GitHubMacros
Section titled “Macros”KVM_CPUID_SIGNATURE
Section titled “KVM_CPUID_SIGNATURE”#define KVM_CPUID_SIGNATURE "KVMKVMKVM\0\0\0" source CPUID offsets
KVM_CPUID_FEATURES_OFF
Section titled “KVM_CPUID_FEATURES_OFF”#define KVM_CPUID_FEATURES_OFF 1 source KVM_FEATURE_PV_SEND_IPI
Section titled “KVM_FEATURE_PV_SEND_IPI”#define KVM_FEATURE_PV_SEND_IPI 11 source KVM_HC_SEND_IPI
Section titled “KVM_HC_SEND_IPI”#define KVM_HC_SEND_IPI 10 source Hypercall numbers, passed in RAX to vmcall/vmmcall
KVM_EPERM
Section titled “KVM_EPERM”#define KVM_EPERM 1 source Various error codes… TODO: Consider enum? I only need a few now just to do the simple stuff
KVM_E2BIG
Section titled “KVM_E2BIG”#define KVM_E2BIG 7 source KVM_EFAULT
Section titled “KVM_EFAULT”#define KVM_EFAULT 14 source KVM_EINVAL
Section titled “KVM_EINVAL”#define KVM_EINVAL 22 source KVM_EOPNOTSUPP
Section titled “KVM_EOPNOTSUPP”#define KVM_EOPNOTSUPP 95 source KVM_ENOSYS
Section titled “KVM_ENOSYS”#define KVM_ENOSYS 1000 source KVM_PV_IPI_WINDOW
Section titled “KVM_PV_IPI_WINDOW”#define KVM_PV_IPI_WINDOW 128 source KVM_HC_SEND_IPI needs a 128 bit APIC ID