|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] Re: about fixup_page_fault
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:
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.
> I think the issue here is actually that shadow code places some mapping of
> its own at address 0. We've had this issue before, where it stops NULL
> dereferences from crashing...
Yep; that was different, in that there was no page fault at all.
But of course Xen has no bugs so the code was like that for years
before anyone noticed. :)
Cheers,
Tim
--
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
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |