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

Re: [Xen-devel] [PATCH v6 24/29] xen/x86: allow HVM guests to use hypercalls to bring up vCPUs



>>> On 29.09.15 at 12:00, <andrew.cooper3@xxxxxxxxxx> wrote:
> On 29/09/15 08:09, Jan Beulich wrote:
>>
>>>>> +    uint32_t cs_base;
>>>>> +    uint32_t ds_base;
>>>>> +    uint32_t ss_base;
>>>> I continue to question why we have DS here, but not ES (and maybe
>>>> FS and GS too). I.e. either just CS and SS (which are architecturally
>>>> required) or at least all four traditional x86 segment registers. And
>>>> you're also clearly not targeting minimal state, or else there likely
>>>> wouldn't be a need for e.g. R8-R15 in the 64-bit variant.
>>> I'm fine with removing r8-15. Regarding the segment selectors, I don't
>>> have a problem with only allowing CS and SS to be set, or all of them
>>> including FS and GS. But I would like to get a consensus on this, we
>>> have already gone back and forth several times regarding how this
>>> structure should look like, and TBH, I was hoping that this was the last
>>> time.
>> Was there back and forth? I only recall always having asked for
>> consistency here, just like spelled out above.
>>
>>> Andrew, Jan, what would you prefer, either DS is removed or ES, FS and
>>> GS are also added?
>> I voiced my opinion. Andrew?
> 
> DS clearly needs initialising to provide a sane environment in the newly
> running vcpu.  Expecting %cs or %ss overrides until a new GDT is loaded
> is unreasonable IMO.

I don't view this as unreasonable: You want to load a GDT first thing
anyway. And I see nothing wrong with that one instruction carrying
an override (and even then only on 32-bit, as a nul DS is fine on
64-bit).

> Therefore, we are back to the question of whether to provide all segment
> registers, or specify a flat layout without specific selector values.  I
> would prefer the former to the latter.

If we don't go the CS+SS only route, then yes, I'd too prefer
completing the set (I would probably agree with not adding FS
and GS, and even recommend against it in the 64-bit variant,
but I do insist on ES in that case).

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