[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v2 15/25] x86/pv: Use per-domain policy information when calculating the cpumasks
... rather than dynamically clamping against the PV maximum policy. Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx> --- v2: * Spelling fix in the commit message --- xen/arch/x86/domctl.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/xen/arch/x86/domctl.c b/xen/arch/x86/domctl.c index a3b2b72..c538781 100644 --- a/xen/arch/x86/domctl.c +++ b/xen/arch/x86/domctl.c @@ -100,8 +100,8 @@ static void update_domain_cpuid_info(struct domain *d, if ( is_pv_domain(d) && ((levelling_caps & LCAP_1cd) == LCAP_1cd) ) { uint64_t mask = cpuidmask_defaults._1cd; - uint32_t ecx = ctl->ecx & pv_featureset[FEATURESET_1c]; - uint32_t edx = ctl->edx & pv_featureset[FEATURESET_1d]; + uint32_t ecx = p->basic._1c; + uint32_t edx = p->basic._1d; /* * Must expose hosts HTT and X2APIC value so a guest using native @@ -175,7 +175,7 @@ static void update_domain_cpuid_info(struct domain *d, { uint64_t mask = cpuidmask_defaults._7ab0; uint32_t eax = ctl->eax; - uint32_t ebx = ctl->ebx & pv_featureset[FEATURESET_7b0]; + uint32_t ebx = p->feat._7b0; if ( boot_cpu_data.x86_vendor == X86_VENDOR_AMD ) mask &= ((uint64_t)eax << 32) | ebx; @@ -191,7 +191,7 @@ static void update_domain_cpuid_info(struct domain *d, if ( is_pv_domain(d) && ((levelling_caps & LCAP_Da1) == LCAP_Da1) ) { uint64_t mask = cpuidmask_defaults.Da1; - uint32_t eax = ctl->eax & pv_featureset[FEATURESET_Da1]; + uint32_t eax = p->xstate.Da1; if ( boot_cpu_data.x86_vendor == X86_VENDOR_INTEL ) mask &= (~0ULL << 32) | eax; @@ -204,8 +204,8 @@ static void update_domain_cpuid_info(struct domain *d, if ( is_pv_domain(d) && ((levelling_caps & LCAP_e1cd) == LCAP_e1cd) ) { uint64_t mask = cpuidmask_defaults.e1cd; - uint32_t ecx = ctl->ecx & pv_featureset[FEATURESET_e1c]; - uint32_t edx = ctl->edx & pv_featureset[FEATURESET_e1d]; + uint32_t ecx = p->extd.e1c; + uint32_t edx = p->extd.e1d; /* * Must expose hosts CMP_LEGACY value so a guest using native -- 2.1.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |