]> git.baikalelectronics.ru Git - kernel.git/commit
kvm: x86: Toggling CR4.SMAP does not load PDPTEs in PAE mode
authorJim Mattson <jmattson@google.com>
Mon, 17 Aug 2020 18:16:55 +0000 (11:16 -0700)
committerPaolo Bonzini <pbonzini@redhat.com>
Mon, 17 Aug 2020 19:23:50 +0000 (15:23 -0400)
commitc186276251e9b25cfea9595cf193fde0658e1c10
tree23a8784def4552672ad18ee100fa373f2abbb5a0
parent166dcbb6a1d3a7d61da7ae0e94d9798b63f200ff
kvm: x86: Toggling CR4.SMAP does not load PDPTEs in PAE mode

See the SDM, volume 3, section 4.4.1:

If PAE paging would be in use following an execution of MOV to CR0 or
MOV to CR4 (see Section 4.1.1) and the instruction is modifying any of
CR0.CD, CR0.NW, CR0.PG, CR4.PAE, CR4.PGE, CR4.PSE, or CR4.SMEP; then
the PDPTEs are loaded from the address in CR3.

Fixes: a6d20eb26fa2e ("KVM: MMU: fix SMAP virtualization")
Cc: Xiao Guangrong <guangrong.xiao@linux.intel.com>
Signed-off-by: Jim Mattson <jmattson@google.com>
Reviewed-by: Peter Shier <pshier@google.com>
Reviewed-by: Oliver Upton <oupton@google.com>
Message-Id: <20200817181655.3716509-2-jmattson@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/x86.c