[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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.