|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] [PATCH] [SVM]: Make 32bit legacy guests boot again
I forgot to push. Should be there now.
-- Keir
On 29/06/2009 09:39, "Christoph Egger" <Christoph.Egger@xxxxxxx> wrote:
>
> Tnx. I will check as soon as it appears in the public staging tree.
>
> Christoph
>
>
> On Saturday 27 June 2009 11:35:20 Keir Fraser wrote:
>> Changeset 19856 is a cleaned up and streamlined version of this patch.
>> Please take a look. It also fixes a couple of largely theoretical issues:
>> * Should depend on EFER.LMA not EFER.LME
>> * Should handle the LMA 1->0 transition (i.e., return to legacy mode).
>>
>> -- Keir
>>
>> On 26/06/2009 16:19, "Christoph Egger" <Christoph.Egger@xxxxxxx> wrote:
>>> Hi!
>>>
>>> Attached patch fixes a bug introduced in c/s 19648.
>>>
>>> 32bit legacy guests have the sysenter/sysexit instructions available.
>>> Therefore, we have to disable intercepts for the sysenter MSRs or the
>>> guest stucks in an infinite loop of #GPs, otherwise.
>>>
>>> For guests in 64bit mode and 32bit compat mode, sysenter/sysexit
>>> instructions aren't available. The sysenter MSRs have to be intercepted
>>> to make the instruction emulation working.
>>>
>>> Attach patch first assumes the guest is in 32bit legacy mode and
>>> therefore disables the sysenter MSRs in construct_vmcb().
>>> Access to the MSR_EFER is intercepted. When the guest enables longmode,
>>> then enable interception of the sysenter MSRs.
>>>
>>> Signed-off-by: Christoph Egger <Christoph.Egger@xxxxxxx>
>
>
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|