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

Re: [Xen-devel] about fully UMIP support in Xen



On 19/04/17 10:48, Yu Zhang wrote:
>
>
> On 4/19/2017 5:18 PM, Jan Beulich wrote:
>>>>> On 19.04.17 at 10:48, <yu.c.zhang@xxxxxxxxxxxxxxx> wrote:
>>>     I saw that commit 8c14e5f provides emulations for UMIP affected
>>> instructions. But realized that xen does not have logic to expose UMIP
>>> feature to guests - you have sent out one in
>>> https://lists.xenproject.org/archives/html/xen-devel/2016-12/msg00552.html
>>>
>>> to emulate the cpuid leaf, but seems it was only a software solution
>>> and
>>> have not get merged yet.
>>>     So I wonder do you have any specific plan to fully support the
>>> UMIP,
>>> i.e. in Xen 4.10? :-)
>> It would be nice, but I think there are caveats: While PV guests
>> _shouldn't_ use any of the affected instructions, we can't blindly
>> assume they don't. Hence we'd have to emulate them (producing
>> to be determined data, e.g. all zeros). Luckily we don't have to
>> care about VM86 mode, as for code running there emulating the
>> instructions would be mandatory (as they're e.g. needed for CPU
>> family detection, since the recommended approach to tell [iirc]
>> 286 from 386 doesn't reliably work there).
>
> Thanks, Jan.
> You mean if UMIP is enabled in xen, and dom0 triggers affected
> instructions, 0 should
> be returned? Does hypervisor need to differentiate dom0 kernel and its
> user space?
>
>> For HVM guests the feature is of no interest to Xen itself anyway,
>> i.e. all we'd need is allow them to enable the CR4 bit (which my
>> emulation patch did as a side effect, but that patch has been
>> deferred until after Andrew manages to put in some more CPUID
>> work; that single hunk could certainly be split out if desired).
>
> By "CPUID work", I guess you changes needed in the
> xen/tools/gen-cpuid.py,
> not just emulating one to the guest, right?

There are two angles here.

The easy part of CPUID work is to expose it to PV and HVM guests, and
this has yet to be done but shouldn't be hard.

The more complicated part, which needs the toolstack CPUID modifications
I want to do, is to be able to fake up UMIP to HVM guests on non-UMIP
capable hardware.

~Andrew

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

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