1. 04 11月, 2014 4 次提交
    • E
      target-i386: Don't enable nested VMX by default · e93abc14
      Eduardo Habkost 提交于
      TCG doesn't support VMX, and nested VMX is not enabled by default in the
      KVM kernel module.
      
      So, there's no reason to have VMX enabled by default on the core2duo and
      coreduo CPU models, today. Even the newer Intel CPU model definitions
      don't have it enabled.
      
      In this case, we need machine-type compat code, as people may be running
      the older machine-types on hosts that had VMX nesting enabled.
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      e93abc14
    • E
      target-i386: Remove unsupported bits from all CPU models · b9fc20bc
      Eduardo Habkost 提交于
      The following CPU features were never supported by neither TCG or KVM,
      so they are useless on the CPU model definitions, today:
      
       * CPUID_DTS (DS)
       * CPUID_HT
       * CPUID_TM
       * CPUID_PBE
       * CPUID_EXT_DTES64
       * CPUID_EXT_DSCPL
       * CPUID_EXT_EST
       * CPUID_EXT_TM2
       * CPUID_EXT_XTPR
       * CPUID_EXT_PDCM
       * CPUID_SVM_LBRV
      
      As using "enforce" mode is the only way to ensure guest ABI doesn't
      change when moving to a different host, we should make "enforce" mode
      the default or at least encourage management software to always use it.
      
      In turn, to make "enforce" usable, we need CPU models that work without
      always requiring some features to be explicitly disabled. This patch
      removes the above features from all CPU model definitions.
      
      We won't need any machine-type compat code for those changes, because it
      is impossible to have existing VMs with those features enabled.
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Cc: Aurelien Jarno <aurelien@aurel32.net>
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      b9fc20bc
    • E
      target-i386: Disable CPUID_ACPI by default in KVM mode · 864867b9
      Eduardo Habkost 提交于
      KVM never supported the CPUID_ACPI flag, so it doesn't make sense to
      have it enabled by default when KVM is enabled.
      
      The motivation here is exactly the same we had for the MONITOR flag
      (disabled by commit 136a7e9a).
      
      And like in the MONITOR flag case, we don't need machine-type compat code
      because it is currently impossible to run a KVM VM with the ACPI flag set.
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      864867b9
    • E
      target-i386: Rename KVM auto-feature-enable compat function · 1cadaa94
      Eduardo Habkost 提交于
      The x86_cpu_compat_disable_kvm_features() name was a bit confusing, as
      it won't forcibly disable the feature for all CPU models (i.e. add it to
      kvm_default_unset_features), but it will instead turn off the KVM
      auto-enabling of the feature (i.e. remove it from kvm_default_features),
      meaning the feature may still be enabled by default in some CPU models).
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      1cadaa94
  2. 02 11月, 2014 1 次提交
  3. 25 10月, 2014 1 次提交
  4. 23 10月, 2014 1 次提交
  5. 26 9月, 2014 2 次提交
  6. 18 9月, 2014 1 次提交
  7. 12 9月, 2014 1 次提交
  8. 05 9月, 2014 2 次提交
  9. 26 8月, 2014 3 次提交
  10. 09 8月, 2014 1 次提交
  11. 10 7月, 2014 1 次提交
  12. 26 6月, 2014 17 次提交
  13. 10 6月, 2014 1 次提交
  14. 05 6月, 2014 2 次提交
  15. 04 6月, 2014 1 次提交
    • A
      kvm: Enable -cpu option to hide KVM · f522d2ac
      Alex Williamson 提交于
      The latest Nvidia driver (337.88) specifically checks for KVM as the
      hypervisor and reports Code 43 for the driver in a Windows guest when
      found.  Removing or changing the KVM signature is sufficient for the
      driver to load and work.  This patch adds an option to easily allow
      the KVM hypervisor signature to be hidden using '-cpu kvm=off'.  We
      continue to expose KVM via the cpuid value by default.  The state of
      this option does not supercede or replace -enable-kvm or the accel=kvm
      machine option.  This only changes the visibility of KVM to the guest
      and paravirtual features specifically tied to the KVM cpuid.
      Signed-off-by: NAlex Williamson <alex.williamson@redhat.com>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      f522d2ac
  16. 13 5月, 2014 1 次提交
    • P
      target-i386: preserve FPU and MSR state on INIT · 43175fa9
      Paolo Bonzini 提交于
      Most MSRs, plus the FPU, MMX, MXCSR, XMM and YMM registers should not
      be zeroed on INIT (Table 9-1 in the Intel SDM).  Copy them out of
      CPUX86State and back in, instead of special casing env->pat.
      
      The relevant fields are already consecutive except PAT and SMBASE.
      However:
      
      - KVM and Hyper-V MSRs should be reset because they include memory
      locations written by the hypervisor.  These MSRs are moved together
      at the end of the preserved area.
      
      - SVM state can be moved out of the way since it is written by VMRUN.
      
      Cc: Andreas Faerber <afaerber@suse.de>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      43175fa9