public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] KVM, pkeys: fix handling of PKRU across migration
@ 2017-08-23 21:26 Paolo Bonzini
  2017-08-23 21:26 ` [PATCH 1/2] KVM: x86: simplify handling of PKRU Paolo Bonzini
  2017-08-23 21:26 ` [PATCH 2/2] KVM, pkeys: do not use PKRU value in vcpu->arch.guest_fpu.state Paolo Bonzini
  0 siblings, 2 replies; 7+ messages in thread
From: Paolo Bonzini @ 2017-08-23 21:26 UTC (permalink / raw)
  To: linux-kernel, kvm; +Cc: junkang.fjk, yang.zhang.wz

The host pkru is restored right after vcpu exit (commit 1be0e61), so
KVM_GET_XSAVE will return the host PKRU value instead.  In general,
the PKRU value in vcpu->arch.guest_fpu.state cannot be trusted.

The first patch removes an unnecessary abstraction.  The second
fixes the bug.

Please test the patches, as I don't have the affected hardware.

Paolo

Paolo Bonzini (2):
  KVM: x86: simplify handling of PKRU
  KVM, pkeys: do not use PKRU value in vcpu->arch.guest_fpu.state

 arch/x86/include/asm/fpu/internal.h |  6 +++---
 arch/x86/include/asm/kvm_host.h     |  1 +
 arch/x86/kvm/kvm_cache_regs.h       |  5 -----
 arch/x86/kvm/mmu.h                  |  2 +-
 arch/x86/kvm/svm.c                  |  7 -------
 arch/x86/kvm/vmx.c                  | 23 ++++++-----------------
 arch/x86/kvm/x86.c                  | 17 ++++++++++++++---
 7 files changed, 25 insertions(+), 36 deletions(-)

-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2017-08-24 10:15 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-08-23 21:26 [PATCH 0/2] KVM, pkeys: fix handling of PKRU across migration Paolo Bonzini
2017-08-23 21:26 ` [PATCH 1/2] KVM: x86: simplify handling of PKRU Paolo Bonzini
2017-08-24  9:09   ` Yang Zhang
2017-08-24  9:19     ` Paolo Bonzini
2017-08-24 10:05       ` Yang Zhang
2017-08-24 10:14         ` Paolo Bonzini
2017-08-23 21:26 ` [PATCH 2/2] KVM, pkeys: do not use PKRU value in vcpu->arch.guest_fpu.state Paolo Bonzini

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox