At 10:10 +0100 on 27 May (1243419042), Wu Bingzheng wrote:
> ??2009-05-27??"Tim Deegan" <Tim.Deegan@xxxxxxxxxx> ??????
> >At 04:09 +0100 on 27 May (1243397391), Wu Bingzheng wrote:
> >> In another word, how can page-fault handler distinguish the
> >> shadow-page-fault and non-shadow-page-fault?
> >
> >By looking at the guest's own pagetables (not the shadows) and the error
> >code, and figuring out whether this would have been a pagefault on bare
> >metal. Yes, the not_a_shadow_fault path is for this.
Actually, all "goto propagate" paths in sh_page_fault() do this too; the
not_a_shadow_fault label also has some lock handling that's required on
some paths.
> Thanks. Would you like to point out where exactly to make the
> decision?
Typical guest faults are caught at the first "goto propagate", based on
the return code of sh_walk_guest_tables().
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
|