From 18b51a5ae653262867caee309dcefe836afa574d Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Mon, 4 Sep 2017 14:14:36 +0200 Subject: [PATCH] 4.9-stable patches added patches: kvm-arm-arm64-force-reading-uncached-stage2-pgd.patch --- ...64-force-reading-uncached-stage2-pgd.patch | 35 +++++++++++++++++++ queue-4.9/series | 1 + 2 files changed, 36 insertions(+) create mode 100644 queue-4.9/kvm-arm-arm64-force-reading-uncached-stage2-pgd.patch diff --git a/queue-4.9/kvm-arm-arm64-force-reading-uncached-stage2-pgd.patch b/queue-4.9/kvm-arm-arm64-force-reading-uncached-stage2-pgd.patch new file mode 100644 index 00000000000..8b69e5866d9 --- /dev/null +++ b/queue-4.9/kvm-arm-arm64-force-reading-uncached-stage2-pgd.patch @@ -0,0 +1,35 @@ +From 2952a6070e07ebdd5896f1f5b861acad677caded Mon Sep 17 00:00:00 2001 +From: Suzuki K Poulose +Date: Tue, 16 May 2017 10:34:54 +0100 +Subject: kvm: arm/arm64: Force reading uncached stage2 PGD + +From: Suzuki K Poulose + +commit 2952a6070e07ebdd5896f1f5b861acad677caded upstream. + +Make sure we don't use a cached value of the KVM stage2 PGD while +resetting the PGD. + +Cc: Marc Zyngier +Signed-off-by: Suzuki K Poulose +Reviewed-by: Christoffer Dall +Signed-off-by: Christoffer Dall +Signed-off-by: Suzuki K Poulose +Signed-off-by: Greg Kroah-Hartman + + +--- + arch/arm/kvm/mmu.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/arch/arm/kvm/mmu.c ++++ b/arch/arm/kvm/mmu.c +@@ -837,7 +837,7 @@ void kvm_free_stage2_pgd(struct kvm *kvm + spin_lock(&kvm->mmu_lock); + if (kvm->arch.pgd) { + unmap_stage2_range(kvm, 0, KVM_PHYS_SIZE); +- pgd = kvm->arch.pgd; ++ pgd = READ_ONCE(kvm->arch.pgd); + kvm->arch.pgd = NULL; + } + spin_unlock(&kvm->mmu_lock); diff --git a/queue-4.9/series b/queue-4.9/series index 3a071a6cbba..d9a11c4bf01 100644 --- a/queue-4.9/series +++ b/queue-4.9/series @@ -14,3 +14,4 @@ wl1251-add-a-missing-spin_lock_init.patch lib-mpi-kunmap-after-finishing-accessing-buffer.patch xfrm-policy-check-policy-direction-value.patch drm-ttm-fix-accounting-error-when-fail-to-get-pages-for-pool.patch +kvm-arm-arm64-force-reading-uncached-stage2-pgd.patch -- 2.47.3