And the corresponding QEMU support to report parafeatures on cpuid. Signed-off-by: Marcelo Tosatti <[EMAIL PROTECTED]>
Index: kvm-userspace/libkvm/libkvm.c =================================================================== --- kvm-userspace.orig/libkvm/libkvm.c +++ kvm-userspace/libkvm/libkvm.c @@ -210,6 +210,19 @@ int kvm_dirty_pages_log_reset(kvm_contex return kvm_dirty_pages_log_change_all(kvm, 0); } +__u32 kvm_get_para_features(kvm_context_t kvm) +{ + int r; + __u32 para_features; +#ifdef KVM_CAP_PARA_FEATURES + r = ioctl(kvm->fd, KVM_CHECK_EXTENSION, KVM_CAP_PARA_FEATURES); + if (r > 0) + r = ioctl(kvm->fd, KVM_GET_PARA_FEATURES, ¶_features); + if (r == 0) + return para_features; +#endif + return 0; +} kvm_context_t kvm_init(struct kvm_callbacks *callbacks, void *opaque) Index: kvm-userspace/libkvm/libkvm.h =================================================================== --- kvm-userspace.orig/libkvm/libkvm.h +++ kvm-userspace/libkvm/libkvm.h @@ -359,6 +359,8 @@ void kvm_set_cr8(kvm_context_t kvm, int __u64 kvm_get_cr8(kvm_context_t kvm, int vcpu); #endif +__u32 kvm_get_para_features(kvm_context_t kvm); + /*! * \brief Set a vcpu's signal mask for guest mode * Index: kvm-userspace/qemu/qemu-kvm-x86.c =================================================================== --- kvm-userspace.orig/qemu/qemu-kvm-x86.c +++ kvm-userspace/qemu/qemu-kvm-x86.c @@ -14,6 +14,7 @@ extern int kvm_irqchip; #include <libkvm.h> #include <pthread.h> #include <sys/utsname.h> +#include <linux/kvm_para.h> #define MSR_IA32_TSC 0x10 @@ -533,7 +534,7 @@ int kvm_arch_qemu_init_env(CPUState *cen pv_ent = &cpuid_ent[cpuid_nent++]; memset(pv_ent, 0, sizeof(*pv_ent)); pv_ent->function = KVM_CPUID_FEATURES; - pv_ent->eax = 0; + pv_ent->eax = kvm_get_para_features(kvm_context); #endif copy.regs[R_EAX] = 0; ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel