|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [RFC PATCH 03/10] Add cpuid_vmware_leaves
>>> On 12.12.13 at 23:27, Andrew Cooper <andrew.cooper3@xxxxxxxxxx> wrote:
> On 12/12/2013 19:15, Don Slutz wrote:
>> int cpuid_hypervisor_leaves( uint32_t idx, uint32_t sub_idx,
>> uint32_t *eax, uint32_t *ebx, uint32_t *ecx, uint32_t *edx)
>> {
>> struct domain *d = current->domain;
>> /* Optionally shift out of the way of Viridian architectural leaves. */
>> - uint32_t base = is_viridian_domain(d) ? 0x40000100 : 0x40000000;
>> + uint32_t base = 0x40000000;
>> uint32_t limit;
>>
>> + if ( is_viridian_domain(d) )
>> + base += 0x100;
>> + if ( is_vmware_domain(d) )
>> + base += 0x100;
>> +
>
> These bases need a far more scalable solution, especially as the result
> of each of these clauses can be changed at runtime with a cunning
> hvm_param_set hypercall.
>
> I think that both "is pretending to be HyperV" and "is pretending to be
> VMware" need to be domain creation flags which are strictly static for
> the lifetime of the domain.
And it seems highly questionable to me whether having both at the
same time makes much sense.
Plus the new function doesn't belong in xen/arch/x86/traps.c ...
Jan
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |