Re: [PATCH v2 0/7] x86/kvm/hyper-v: Implement KVM_GET_SUPPORTED_HV_CPUID

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 10/12/18 18:21, Vitaly Kuznetsov wrote:
> Changes since v1:
> - Add Michael's R-b tags.
> - Document KVM_GET_SUPPORTED_HV_CPUID and KVM_CAP_HYPERV_CPUID.
> - Fix error handling in kvm_vcpu_ioctl_get_hv_cpuid().
> - Check for -E2BIG in the selftest. PATCH6 is added to support the change.
> 
> As suggested by Paolo, introduce new KVM_GET_SUPPORTED_HV_CPUID returning
> all Hyper-V CPUID feature leaves, this way we won't need to add a new
> KVM_CAP_HYPERV_* for every new Hyper-V enlightenment we implement in
> KVM.
> 
> (Using the existing KVM_GET_SUPPORTED_CPUID doesn't seem to be possible:
> Hyper-V CPUID feature leaves intersect with KVM's (e.g. 0x40000000,
> 0x40000001) and we would probably confuse userspace in case we decide to
> return these twice).
> 
> This patch series also does some housekeeping work in hyperv-tlfs.h, adds a
> simple selftest (that's how I actually checked that the newly added ioctl
> works) and removes recently added KVM_CAP_HYPERV_STIMER_DIRECT before it's
> too late.
> 
> Vitaly Kuznetsov (7):
>   x86/hyper-v: Do some housekeeping in hyperv-tlfs.h
>   x86/hyper-v: Drop HV_X64_CONFIGURE_PROFILER definition
>   x86/kvm/hyper-v: Introduce nested_get_evmcs_version() helper
>   x86/kvm/hyper-v: Introduce KVM_GET_SUPPORTED_HV_CPUID
>   x86/kvm/hyper-v: Drop KVM_CAP_HYPERV_STIMER_DIRECT
>   KVM: selftests: implement an unchecked version of vcpu_ioctl()
>   KVM: selftests: Add hyperv_cpuid test
> 
>  Documentation/virtual/kvm/api.txt             |  57 ++++++
>  arch/x86/include/asm/hyperv-tlfs.h            | 185 +++++++++---------
>  arch/x86/include/asm/kvm_host.h               |   1 +
>  arch/x86/kvm/hyperv.c                         | 125 +++++++++++-
>  arch/x86/kvm/hyperv.h                         |   2 +
>  arch/x86/kvm/svm.c                            |   7 +
>  arch/x86/kvm/vmx.c                            |  24 ++-
>  arch/x86/kvm/x86.c                            |  21 +-
>  include/uapi/linux/kvm.h                      |   5 +-
>  tools/testing/selftests/kvm/Makefile          |   1 +
>  .../testing/selftests/kvm/include/kvm_util.h  |   2 +
>  tools/testing/selftests/kvm/lib/kvm_util.c    |  14 +-
>  .../selftests/kvm/x86_64/hyperv_cpuid.c       | 157 +++++++++++++++
>  13 files changed, 493 insertions(+), 108 deletions(-)
>  create mode 100644 tools/testing/selftests/kvm/x86_64/hyperv_cpuid.c
> 

Queued, thanks.  I moved this above the direct EOI series so that
KVM_CAP_HYPERV_STIMER_DIRECT need not exist at any point of the history.

Paolo



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux