On Wed, Dec 01, 2010 at 03:11:11AM +0800, Xiao Guangrong wrote: > On 12/01/2010 02:38 AM, Gleb Natapov wrote: > > >> It can't avoid the page to be evicted again since the page is marked accessed only > >> when spte is droped or updated. > > I still do not understand why are you disabling prefault for ept. Why > > do you want to distinguish between actually accessed translations and > > prefauls? What problem are you trying to fix? > > > > Look at set_spte_track_bits() function: > > if (!shadow_accessed_mask || old_spte & shadow_accessed_mask) > kvm_set_pfn_accessed(pfn); > > It's always mark the page accessed. > > But prefault is the speculative path, the prefault address may not be > accessed later(the apf process is killed). under this case, the page is > not really accessed. Firs of all if guest is PV the guest process cannot be killed. Second why is it a problem that we marked pfn as accessed on speculative path? What problem it causes especially since it is very likely that the page will be accessed shortly anyway? -- Gleb. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html