Messages in this thread | | | Date | Thu, 17 Jun 2010 12:20:41 +0300 | From | Avi Kivity <> | Subject | Re: [PATCH 5/6] KVM: MMU: prefetch ptes when intercepted guest #PF |
| |
On 06/17/2010 12:04 PM, Xiao Guangrong wrote: > > >> So we can change the fault path to always fault 16 ptes, aligned on 16 >> pte boundary, with the needed pte called with specualtive=false. >> > Avi, i not understand it clearly, Could you please explain it? :-( >
Right now if the fault is in spte i, you prefetch ptes (i+1)..(i+MAX_PREFETCH-1). I'd like to prefetch ptes (i & ~(MAX_PREFETCH-1))..(i | (MAX_PREFETCH - 1)). Read all those gptes, and map them one by one with speculative = false only for spte i.
Perhaps we need to integrate it into walk_addr, there's no reason to read the gptes twice.
-- error compiling committee.c: too many arguments to function
| |