|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] Re: about fixup_page_fault
On 17/12/2008 03:17, "Tian, Kevin" <kevin.tian@xxxxxxxxx> wrote:
> I guess I may miss sth important, but I don't understand below
> code at end of fixup_page_fault:
>
> if ( paging_mode_enabled(d) )
> {
> int ret = paging_fault(addr, regs);
> if ( ret == EXCRET_fault_fixed )
> trace_trap_two_addr(TRC_PV_PAGING_FIXUP, regs->eip, addr);
> return ret;
> }
>
> Shouldn't a check upon guest_mode(regs) is required, since the
> fault may be triggered by xen itself? For example, a null pointer
> deference by xen code (not passed from guest) may not get chance
> to reach "fatal page fault" and instead a guest page fault could be
> injected per my reading...
Consider copy_from_guest() applied to a PV guest with dirty logging enabled.
The #PF handler should fix up faults when accessing guest address space via
shadow page tables, even when the access happens within Xen.
I haven't looked but I'm sure that the shadow code will only propagate the
fault, and return EXCRET_fault_fixed, if it sees the fault occurred in guest
context.
-- Keir
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-devel] about fixup_page_fault, Tian, Kevin
- [Xen-devel] Re: about fixup_page_fault,
Keir Fraser <=
- [Xen-devel] RE: about fixup_page_fault, Tian, Kevin
- [Xen-devel] Re: about fixup_page_fault, Keir Fraser
- [Xen-devel] RE: about fixup_page_fault, Tian, Kevin
- [Xen-devel] Re: about fixup_page_fault, Keir Fraser
- [Xen-devel] RE: about fixup_page_fault, Tian, Kevin
- [Xen-devel] RE: about fixup_page_fault, Tian, Kevin
- [Xen-devel] Re: about fixup_page_fault, Tim Deegan
- [Xen-devel] Re: about fixup_page_fault, Keir Fraser
- [Xen-devel] Re: about fixup_page_fault, Keir Fraser
- [Xen-devel] Re: about fixup_page_fault, Tim Deegan
|
|
|
|
|