Marcelo Tosatti wrote: > On Tue, Jan 06, 2009 at 04:29:59PM +0200, Avi Kivity wrote: > >> Yes... >> >> Looks like kvm_unsync_page can be folded into mmu_need_write_protect >> (after which we can drop lookup_page(), which is not a good API). But >> that's after we solve the current problem. >> >> Looks like the addition of a second role for non-pge mode confuses the >> mmu. After the second page is created, mmu_need_write_protect() will >> return 1, but previously existing sptes can still be writable? >> >> Looks like we need to call rmap_write_protect() when the new page is >> created. >> > > I'm not sure about the details, but I suspect that multiple shadows > confuse NPT somehow. > > Alexander can you give this a try: >
Using this patch it works. But if I read it correctly, that doesn't actually fix anything but only treats NPT/EPT special, which it shouldn't, should it? Maybe this actually even breaks EPT? I remember having seen a lot of CR4 hacks in svm.c when npt is enabled. Maybe that is related? Alex -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
