[Lguest] [PATCH 3/5] lguest: avoid accidental recycling of pgdir pages

Jeremy Fitzhardinge jeremy at goop.org
Sat Mar 28 03:28:12 EST 2009


Rusty Russell wrote:
>> You can't just do this in tlb flush?
>>     
>
> I don't think so.  The problem is that lguest tracks 4 toplevels, using random
> replacement.  This cache is indexed by cr3 value.
>
> Lguest assumes it's told about all pte removals or changes, but simple
> additions get faulted in.  If a pgdir page gets reused we'll potentially have
> stale values from its previous life as a pgdir, no?
>   

Yes, but when you get a tlb flush hypercall, couldn't you also look up 
the corresponding shadow pte and zap it so that it will get repopulated 
next time around?  And a full tlb flush would just zap the entire 
shadow.  After all, the shadow pagetable is just a glorified 
software-managed tlb...

    J



More information about the Lguest mailing list