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

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

On 2 Jun 2006, at 18:20, Petersson, Mats wrote:

Just try re-executing the instruction (i.e. directly return
to the guest). If the page has become unmapped then the
processor should handle the fault on instruction fetch.

Ok, that approach makes more sense than my silly ideas of counting
instruction bytes... And hopefully the code that removed our very much
needed page will eventually let us actually emulate the instruction at
some point, without too many re-executions... ;-)

Bear in mind that we need to be able to inject page faults into the guest from the emulator anyway, for other reasons. For example, consider INSB/OUTSB -- the memory area being transferred to/from may be paged out. Current HVM MMIO code is rather lax about dealing with this (i.e., it doesn't -- it ignores error returns from gva_to_gpa(), which itself has a bogus error value anyway (0 is a valid pa)). Given we need the code, we may just want to inject faults for instruction-fetch errors too, but we do have a choice for those.

 -- Keir

Xen-devel mailing list



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