x86/NPT: don't walk page tables when changing types on a range
authorJan Beulich <jbeulich@suse.com>
Fri, 2 May 2014 09:52:42 +0000 (11:52 +0200)
committerJan Beulich <jbeulich@suse.com>
Fri, 2 May 2014 09:52:42 +0000 (11:52 +0200)
commitb3e024f31f5bb034009e1287bc1fec61f996e377
treeef8ad6ba3d2cf722ad94ebf680813f2b8ef2ac0c
parent437f54d3a33d3787a7cc485eb2b3451e8be49ca7
x86/NPT: don't walk page tables when changing types on a range

This builds on the fact that in order for no NPF VM exit to occur,
_PAGE_USER must always be set. I.e. by clearing the flag we can force a
VM exit allowing us to do similar lazy type changes as on EPT.

That way, the generic entry-wise code can go away, and we could remove
the range restriction in enforced on HVMOP_track_dirty_vram for XSA-27.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Tim Deegan <tim@xen.org>
xen/arch/x86/hvm/svm/svm.c
xen/arch/x86/mm/p2m-pt.c
xen/arch/x86/mm/p2m.c
xen/include/asm-x86/p2m.h