All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eduardo Habkost <ehabkost@redhat.com>
To: qemu-devel@nongnu.org, Peter Maydell <peter.maydell@linaro.org>
Cc: Paolo Bonzini <pbonzini@redhat.com>,
	Vitaly Kuznetsov <vkuznets@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	Eduardo Habkost <ehabkost@redhat.com>
Subject: [PULL 10/24] i386: always fill Hyper-V CPUID feature leaves from X86CPU data
Date: Tue,  1 Jun 2021 14:10:00 -0400	[thread overview]
Message-ID: <20210601181014.2568861-11-ehabkost@redhat.com> (raw)
In-Reply-To: <20210601181014.2568861-1-ehabkost@redhat.com>

From: Vitaly Kuznetsov <vkuznets@redhat.com>

We have all the required data in X86CPU already and as we are about to
split hyperv_handle_properties() into hyperv_expand_features()/
hyperv_fill_cpuids() we can remove the blind copy. The functional change
is that QEMU won't pass CPUID leaves it doesn't currently know about
to the guest but arguably this is a good change.

Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com>
Message-Id: <20210422161130.652779-4-vkuznets@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
---
 target/i386/kvm/kvm.c | 9 ---------
 1 file changed, 9 deletions(-)

diff --git a/target/i386/kvm/kvm.c b/target/i386/kvm/kvm.c
index 7849e84e9a0..4cd4df223fc 100644
--- a/target/i386/kvm/kvm.c
+++ b/target/i386/kvm/kvm.c
@@ -1208,9 +1208,6 @@ static int hyperv_handle_properties(CPUState *cs,
     }
 
     if (cpu->hyperv_passthrough) {
-        memcpy(cpuid_ent, &cpuid->entries[0],
-               cpuid->nent * sizeof(cpuid->entries[0]));
-
         c = cpuid_find_entry(cpuid, HV_CPUID_VENDOR_AND_MAX_FUNCTIONS, 0);
         if (c) {
             cpu->hyperv_vendor_id[0] = c->ebx;
@@ -1310,12 +1307,6 @@ static int hyperv_handle_properties(CPUState *cs,
         goto free;
     }
 
-    if (cpu->hyperv_passthrough) {
-        /* We already copied all feature words from KVM as is */
-        r = cpuid->nent;
-        goto free;
-    }
-
     c = &cpuid_ent[cpuid_i++];
     c->function = HV_CPUID_VENDOR_AND_MAX_FUNCTIONS;
     c->eax = hyperv_feat_enabled(cpu, HYPERV_FEAT_EVMCS) ?
-- 
2.30.2



  parent reply	other threads:[~2021-06-01 18:17 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-01 18:09 [PULL 00/24] x86 queue, 2021-06-01 Eduardo Habkost
2021-06-01 18:09 ` [PULL 01/24] target/i386: Add CPU model versions supporting 'xsaves' Eduardo Habkost
2021-06-01 18:09 ` [PULL 02/24] i386: Document when features can be added to kvm_default_props Eduardo Habkost
2021-06-01 18:09 ` [PULL 03/24] target/i386/cpu: Constify CPUCaches Eduardo Habkost
2021-06-01 18:09 ` [PULL 04/24] target/i386/cpu: Constify X86CPUDefinition Eduardo Habkost
2021-06-01 18:09 ` [PULL 05/24] i386/cpu_dump: support AVX512 ZMM regs dump Eduardo Habkost
2021-06-01 18:09 ` [PULL 06/24] i386: use better matching family/model/stepping for 'qemu64' CPU Eduardo Habkost
2021-06-01 18:09 ` [PULL 07/24] i386: use better matching family/model/stepping for 'max' CPU Eduardo Habkost
2021-06-01 18:09 ` [PULL 08/24] i386: keep hyperv_vendor string up-to-date Eduardo Habkost
2021-06-01 18:09 ` [PULL 09/24] i386: invert hyperv_spinlock_attempts setting logic with hv_passthrough Eduardo Habkost
2021-06-01 18:10 ` Eduardo Habkost [this message]
2021-06-01 18:10 ` [PULL 11/24] i386: stop using env->features[] for filling Hyper-V CPUIDs Eduardo Habkost
2021-06-01 18:10 ` [PULL 12/24] i386: introduce hyperv_feature_supported() Eduardo Habkost
2021-06-01 18:10 ` [PULL 13/24] i386: introduce hv_cpuid_get_host() Eduardo Habkost
2021-06-01 18:10 ` [PULL 14/24] i386: drop FEAT_HYPERV feature leaves Eduardo Habkost
2021-06-01 18:10 ` [PULL 15/24] i386: introduce hv_cpuid_cache Eduardo Habkost
2021-06-01 18:10 ` [PULL 16/24] i386: split hyperv_handle_properties() into hyperv_expand_features()/hyperv_fill_cpuids() Eduardo Habkost
2021-06-01 18:10 ` [PULL 17/24] i386: move eVMCS enablement to hyperv_init_vcpu() Eduardo Habkost
2021-06-01 18:10 ` [PULL 18/24] i386: switch hyperv_expand_features() to using error_setg() Eduardo Habkost
2021-06-01 18:10 ` [PULL 19/24] i386: adjust the expected KVM_GET_SUPPORTED_HV_CPUID array size Eduardo Habkost
2021-06-01 18:10 ` [PULL 20/24] i386: prefer system KVM_GET_SUPPORTED_HV_CPUID ioctl over vCPU's one Eduardo Habkost
2021-06-01 18:10 ` [PULL 21/24] i386: use global kvm_state in hyperv_enabled() check Eduardo Habkost
2021-06-01 18:10 ` [PULL 22/24] target/i386/sev: add support to query the attestation report Eduardo Habkost
2021-06-01 18:10   ` Eduardo Habkost
2021-06-01 18:10 ` [PULL 23/24] sev: use explicit indices for mapping firmware error codes to strings Eduardo Habkost
2021-06-01 18:10 ` [PULL 24/24] sev: add missing firmware error conditions Eduardo Habkost
2021-06-02 10:41 ` [PULL 00/24] x86 queue, 2021-06-01 Peter Maydell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210601181014.2568861-11-ehabkost@redhat.com \
    --to=ehabkost@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.org \
    --cc=vkuznets@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.