android_kernel_samsung_univ.../arch/x86
Peter Feiner c171caf7be kvm: vmx: ensure VMCS is current while enabling PML
commit 4e59516a12a6ef6dcb660cb3a3f70c64bd60cfec upstream.

Between loading the new VMCS and enabling PML, the CPU was unpinned.
If the vCPU thread were migrated to another CPU in the interim (e.g.,
due to preemption or sleeping alloc_page), then the VMWRITEs to enable
PML would target the wrong VMCS -- or no VMCS at all:

  [ 2087.266950] vmwrite error: reg 200e value 3fe1d52000 (err -506126336)
  [ 2087.267062] vmwrite error: reg 812 value 1ff (err 511)
  [ 2087.267125] vmwrite error: reg 401e value 12229c00 (err 304258048)

This patch ensures that the VMCS remains current while enabling PML by
doing the VMWRITEs while the CPU is pinned. Allocation of the PML buffer
is hoisted out of the critical section.

Signed-off-by: Peter Feiner <pfeiner@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Cc: "Herongguang (Stephen)" <herongguang.he@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-02-26 11:07:52 +01:00
..
boot x86/build: Build compressed x86 kernels as PIE 2016-10-20 10:00:47 +02:00
configs kconfig: tinyconfig: provide whole choice blocks to avoid warnings 2016-09-24 10:07:42 +02:00
crypto crypto: sha1-mb - use corrcet pointer while completing jobs 2016-05-04 14:48:44 -07:00
entry ftrace/x86_32: Set ftrace_stub to weak to prevent gcc from using short jumps to it 2017-01-09 08:07:50 +01:00
ia32
include Fix potential infoleak in older kernels 2016-11-10 16:36:34 +01:00
kernel Revert "x86/ioapic: Restore IO-APIC irq_chip retrigger callback" 2017-02-14 15:22:50 -08:00
kvm kvm: vmx: ensure VMCS is current while enabling PML 2017-02-26 11:07:52 +01:00
lguest
lib x86/uaccess/64: Handle the caching of 4-byte nocache copies properly in __copy_user_nocache() 2016-02-25 12:01:13 -08:00
math-emu
mm Revert "x86/mm: Expand the exception table logic to allow new handling options" 2016-10-31 19:56:26 -06:00
net
oprofile
pci x86/PCI: Ignore _CRS on Supermicro X8DTH-i/6/iF/6F 2017-01-26 08:23:47 +01:00
platform x86/platform/goldfish: Prevent unconditional loading 2017-02-26 11:07:51 +01:00
power
purgatory x86/kexec: add -fno-PIE 2016-11-26 09:54:52 +01:00
ras
realmode
tools
um
video
xen x86/xen: fix upper bound of pmd loop in xen_cleanhighmap() 2016-11-10 16:36:36 +01:00
.gitignore
Kbuild
Kconfig x86/microcode: Untangle from BLK_DEV_INITRD 2016-04-12 09:08:32 -07:00
Kconfig.cpu
Kconfig.debug
Makefile
Makefile_32.cpu
Makefile.um