x86/HVM: refuse CR3 loads with reserved (upper) bits set
authorJan Beulich <jbeulich@suse.com>
Fri, 22 May 2020 12:40:30 +0000 (14:40 +0200)
committerJan Beulich <jbeulich@suse.com>
Fri, 22 May 2020 12:40:30 +0000 (14:40 +0200)
commit80872597e6bd82429714b00f6a3e59fe21297906
tree98b95a12d0e9e33aa7d1e3469e2a21ea71940605
parent18cc07b96f76bf44e9215d79e96d4b37bd3cbcac
x86/HVM: refuse CR3 loads with reserved (upper) bits set

While bits 11 and below are, if not used for other purposes, reserved
but ignored, bits beyond physical address width are supposed to raise
exceptions (at least in the non-nested case; I'm not convinced the
current nested SVM/VMX behavior of raising #GP(0) here is correct, but
that's not the subject of this change).

Introduce currd as a local variable, and replace other v->domain
instances at the same time.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
xen/arch/x86/hvm/hvm.c