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


[Xen-devel] Re: Re-using the x86_emulate_memop() to perform MMIO for HVM

To: Khoa Huynh <khoa@xxxxxxxxxx>
Subject: [Xen-devel] Re: Re-using the x86_emulate_memop() to perform MMIO for HVM.
From: Keir Fraser <Keir.Fraser@xxxxxxxxxxxx>
Date: Thu, 04 May 2006 17:22:59 +0100
Cc: "Petersson, Mats" <Mats.Petersson@xxxxxxx>, xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Thu, 04 May 2006 09:23:54 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: Your message of "Thu, 04 May 2006 10:59:48 CDT." <OF6818D0A6.3313FF63-ON85257164.00566462-86257164.0057DF6A@xxxxxxxxxx>
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
> Keir Fraser <Keir.Fraser@xxxxxxxxxxxx> wrote on 05/04/2006 04:10:06 AM:
> >
> > On 3 May 2006, at 15:50, Petersson, Mats wrote:
> >
> > > A third, easier, but less pleasing way to solve it would be retain the
> > > current two decode/emulate code-paths, and just add everythign twice
> > > when new scenarios are needed to be decoded - I don't quite like this
> > > idea, but it certainly is the least amount of effort to implement!
> > >
> > > Thoughts and comments (aside from the obvious "You should have thought
> > > about this earlier!" ;-) would be welcome...
> >
> > We need an emulator both in Xen and in the device model. The current
> > split decode-emulate is pretty barking. My plan for now would be to
> > copy x86_emulate.c and plumb it into qemu-dm: so we do duplicate the
> > code but it's actually only one source file to maintain.
> Would this be sufficient to support real mode in qemu-dm with
> x86_emulate in it (at least for Intel) ?

If we were to run all real mode in x86_emulate then it would need
extending for quite a few more instructions. Currently it handles only
instructions with at least one memory operand. I don't think it's that
bad though, but it depends how complete we want to be (e.g., FPU
instructions). Are we just trying to get a good range of bootloaders
running robustly, or do we want to run MS-DOS and Win95 with decent
performance? The latter would in any case probably require something
more powerful (like the qemu cpu emulation engine) as running entirely
on x86_emulate is not going to have very good performance.

 -- Keir

Xen-devel mailing list

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