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

[Xen-devel] Re: about fixup_page_fault



At 10:58 +0000 on 17 Dec (1229511534), Keir Fraser wrote:
> On 17/12/2008 10:53, "Tim Deegan" <Tim.Deegan@xxxxxxxxxx> wrote:
> 
> > At 09:04 +0000 on 17 Dec (1229504644), Keir Fraser wrote:
> >> A Xen fault shouldn't cause a lookup in guest tables for HVM guests.
> > 
> > Looks like it does, though. :(  The check in fixup_page_fault should
> > probably be more like:
> 
> But wouldn't this just cause an infinite loop?

I thought that was what Kevin was reporting.

> Since shadow code would fix up the fault in the guest shadow tables,
> which the hypervisor is not running on?

Yes, exactly.  But it would only do that for faulting accesses from Xen
that (a) weren't fixed up by any of the other mechanism, and (b)
happened to be to addresses that were mapped in the guest tables.  And
Xen would never do such a thing. :)

Tim.

>  -- Keir
> 
> > if ( (paging_mode_external(d) && guest_mode(regs))
> >      || (paging_mode_enabled(d) && !paging_mode_external(d)) )
> > 
> > That is, unconditionally call paging_fault() for PV guests (who
> > shouldn't be allowed map the 0 page, right?), and call for HVM guests
> > only if the guest caused the fault.
> > 
> > Potentially it can all be tidied up a bit by moving the other
> > HVM-specific call out of the if (IN_HYPERVISOR_RANGE) block at the top.
> 
> 

-- 
Tim Deegan <Tim.Deegan@xxxxxxxxxx>
Principal Software Engineer, Citrix Systems (R&D) Ltd.
[Company #02300071, SL9 0DZ, UK.]

_______________________________________________
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®.