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/
Home Products Support Community News


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

To: Bastian Blank <bastian@xxxxxxxxxxxx>, <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: Re: [Xen-devel] [RFC][PATCH] Emulate instructions in vm86 mode
From: Keir Fraser <Keir.Fraser@xxxxxxxxxxxx>
Date: Thu, 07 Sep 2006 13:42:02 +0100
Delivery-date: Thu, 07 Sep 2006 05:40:56 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <20060907095104.GA23514@xxxxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcbSewQ0QqsMJD5uEdu/wwAX8io7RQ==
Thread-topic: [Xen-devel] [RFC][PATCH] Emulate instructions in vm86 mode
User-agent: Microsoft-Entourage/

On 7/9/06 10:51, "Bastian Blank" <bastian@xxxxxxxxxxxx> wrote:

> This patch fixes the emulation of instructions in vm86 mode. It fetches
> them using cs and eip instead of only eip. This makes it at least
> possible to use the i945GM vesa bios from the running system.
> I'm not sure if this is the correct fix or if we should call the gpf
> handler of the running system. At least the support in linux reports
> traps back to the userspace caller which is not possible if emulated in
> xen.

There are also data operands of some instructions that may need fixing
(INS/OUTS). What happens if you just bail to the guest's GPF handler if in
vm86 mode? I think the libint10 library in userspace will emulate all these
instructions itself.

 -- Keir

Xen-devel mailing list