WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] [RFC][PATCH] Emulate instructions in vm86 mode

>>> Chris Wright <chrisw@xxxxxxxxxxxx> 02.11.06 12:53 >>>
>* Keir Fraser (Keir.Fraser@xxxxxxxxxxxx) wrote:
>> On 21/9/06 19:35, "Bastian Blank" <bastian@xxxxxxxxxxxx> wrote:
>> 
>> > On Sat, Sep 09, 2006 at 01:15:28AM +0100, Keir Fraser wrote:
>> >> That doesn't seem to make sense. It's probably worthwhile working out why
>> >> you are taking that 'failsafe' path through create_bounce_frame. If you 
>> >> run
>> >> a debug build of Xen, do you get lines of the form 'Pre-exception: xxxxxx 
>> >> ->
>> >> xxxxxx' in 'xm dmesg' or on the Xen emergency console?
>> > 
>> > Nope. In fact I'm unable to say why this happens. Is it possible that
>> > you at least merge the non-failsafe part of the patch (i.e. the if
>> > vm86_mode). It makes most things working.
>> 
>> I already applied your original patch (which adds cs<<4 to eip if in vm86
>> mode). It was obviously the right thing to do.
>
>This is breaking machines (with at least 845G) when running video
>bios.  Appears it can't set the video memory size appropriately,
>and therefore X exits since it doesn't have any modes that will fit
>in the default 320k.  Both backing the change out and kicking back to
>userspace using if(vm86_mode(regs)) goto fail;  allow X to run again.
>I've tested various combos of patched and unpatched hv on 845, 945,
>and 965 to find that backing out the patch breaks X on 945.  Bastian,
>any further ideas on the failsafe path?

Hmm, that would then perhaps also cause problems with the enhanced
emulation code I have pending in my 32on64 queue, unless the problem
is due to masked problems in the old code (ie when not adding the CS
base for vm86 mode emulation). Any chance you dug into why exactly
the more correct (but still incomplete) code doesn't work anymore
(namely, what instruction(s) caused problems)?

Jan



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>