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

Re: [Xen-devel] [PATCH] enable port accesses with (almost) full register context


  • To: Jan Beulich <jbeulich@xxxxxxxxxx>
  • From: Keir Fraser <Keir.Fraser@xxxxxxxxxxxx>
  • Date: Mon, 18 Sep 2006 12:05:06 +0100
  • Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
  • Delivery-date: Mon, 18 Sep 2006 04:05:21 -0700
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>
  • Thread-index: AcbbEkwkiqVoAkcFEduN5wAX8io7RQ==
  • Thread-topic: [Xen-devel] [PATCH] enable port accesses with (almost) full register context

On 18/9/06 11:40, "Jan Beulich" <jbeulich@xxxxxxxxxx> wrote:

> It'll be immediately needed if string I/O instructions are to also go that
> path, unless you'd want them to access the original user buffer (and
> trap the eventual page fault).

We emulate INS/OUTS as a sequence of IN/OUT plus copy_to/from_guest. Unless
the SMM code depends on us not having 'clobbered' %eax (which we would need
to do to emulate OUTS with OUT) then we should be okay there. I guess how
complicated the save/restore code needs to be depends on just how accurately
we need to set up the register state for this HP SMM code -- for example, I
guess we get away with SS:ESP being incorrect; can we get away with EAX as
well? Hmm... I guess you have made your point that there are devils in the
detail of doing this emulation. ;-)

> Also, I might need a little more clarification on the stack (ab)use for
> creating stubs.

Just declare a char-array automatic variable, fill it with machine code, and
call it.

 -- Keir



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


 


Rackspace

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