[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v3 07/32] xen/x86: fix arch_set_info_guest for HVM guests



>>> On 24.07.15 at 13:11, <andrew.cooper3@xxxxxxxxxx> wrote:

> 
> On 24/07/15 10:59, Roger Pau Monnà wrote:
>> El 24/07/15 a les 10.22, Jan Beulich ha escrit:
>>>>>> On 23.07.15 at 19:12, <andrew.cooper3@xxxxxxxxxx> wrote:
>>>> I would go with Jan's suggestion and make
>>>> XEN_DOMCTL_{get/set}vcpucontext ineligible for use on HVM guests.
>>> Plus, as you said earlier, a new VCPUOP_initialize.
>> (Adding the Linux maintainers to get their opinion on the interface)
>>
>> Just to recap and to make sure I got all the points:
>>
>>   - vCPU initialization from the toolstack (BSP initialization) is going
>> to be done using XEN_DOMCTL_sethvmcontext.
>>   - XEN_DOMCTL_{get/set}vcpucontext is going to return EOPNOTSUPP for
>> HVM guests.
>>   - A new vcpu_guest_contatext (vcpu_hvm_context?) is going to be
>> introduced together with a a new VCPUOP_initialize hypercall
>> (VCPUOP_hvm_initialize?).
>>
>> The following is a layout proposal for the new vcpu_context:
>>
>> struct vcpu_hvm_context {
>> /* 32bit fields of the structure will be used. */
>> #define _VCPUHVM_MODE_32B              0
>> #define VCPUHVM_MODE_32B               (1<<_VCPUHVM_MODE_32B)
>> /* 64bit fields of the structure will be used. */
>> #define _VCPUHVM_MODE_64B              1
>> #define VCPUHVM_MODE_64B               (1<<_VCPUHVM_MODE_64B)
>> #define _VCPUHVM_online                2
>> #define VCPUHVM_online                 (1<<_VCPUHVM_online )
>>      uint32_t flags;                         /* VCPUHVM_* flags.   */
>>      struct cpu_hvm_regs user_regs;          /* CPU registers.     */
>> };
> 
> To avoid making the 32bit (and optionally 16bit) massive as a side 
> effect of 64bit, can I suggest
> 
> uint32_t flags;
> union {
>      cpu_hvm32_regs;
>      cpu_hvm64_regs;
> };
> 
> Which allows hvm32_regs to be a far smaller structure.

But that wouldn't help the size of the overall structure.

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®.