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

RE: [Xen-devel] Fetching instructions after page-fault, near page boundary?

  • To: "Keir Fraser" <Keir.Fraser@xxxxxxxxxxxx>
  • From: "Petersson, Mats" <Mats.Petersson@xxxxxxx>
  • Date: Fri, 2 Jun 2006 19:07:49 +0200
  • Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
  • Delivery-date: Fri, 02 Jun 2006 10:08:44 -0700
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>
  • Thread-index: AcaGY5ZUUTVoJu7OSy+FoG78KUHoXgAAv0UA
  • Thread-topic: [Xen-devel] Fetching instructions after page-fault, near page boundary?

> -----Original Message-----
> From: Keir Fraser [mailto:Keir.Fraser@xxxxxxxxxxxx] 
> Sent: 02 June 2006 17:40
> To: Petersson, Mats
> Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
> Subject: Re: [Xen-devel] Fetching instructions after 
> page-fault, near page boundary?
> On 2 Jun 2006, at 17:34, Petersson, Mats wrote:
> > Does anyone see a problem with this method?
> I wouldn't trust it. What if you have code running in paged 
> memory (e.g., random privileged userspace process)? Pages can 
> disappear under your feet. I think you need to remember how 
> many bytes you managed to read and do the job thoroughly. 
> It's not that much extra code.

But that means that we'd have to parse the instruction bytes in Xen
(since we can't read them as trivially in QEMU) and figure out how many
bytes the instruction is. Since both AMD and Intel have problems with
getting the correct number of bytes from the processor during a
page-fault intercept, it's no help that Intel SOMETIMES have a correct
number of bytes in a VMCS entry... 

How do we do it properly, if there's non-present page, re-inject the
page-fault, I guess?

>   -- Keir

Xen-devel mailing list



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