aboutsummaryrefslogtreecommitdiff
path: root/arch/powerpc/kvm/book3s_hv_rm_mmu.c
diff options
context:
space:
mode:
authorAlex Shi <alex.shi@linaro.org>2017-01-19 12:04:27 +0800
committerAlex Shi <alex.shi@linaro.org>2017-01-19 12:04:27 +0800
commitcb370744bc101be91a0bc3e9fbdb670ab44df97d (patch)
tree1a84448b43dee0f4e255f9434e776c51812ddb35 /arch/powerpc/kvm/book3s_hv_rm_mmu.c
parent67f07b48af22065412ba4e78472121c0a9f58329 (diff)
parentf40b3cc69de8c97bbcdb74e3cffda06ffcad2cd7 (diff)
Merge tag 'v4.1.38' into linux-linaro-lsk-v4.1lsk-v4.1-17.02
This is the 4.1.38 stable release
Diffstat (limited to 'arch/powerpc/kvm/book3s_hv_rm_mmu.c')
-rw-r--r--arch/powerpc/kvm/book3s_hv_rm_mmu.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/powerpc/kvm/book3s_hv_rm_mmu.c b/arch/powerpc/kvm/book3s_hv_rm_mmu.c
index c6d601cc9764..bee16411de73 100644
--- a/arch/powerpc/kvm/book3s_hv_rm_mmu.c
+++ b/arch/powerpc/kvm/book3s_hv_rm_mmu.c
@@ -619,6 +619,8 @@ long kvmppc_h_protect(struct kvm_vcpu *vcpu, unsigned long flags,
HPTE_V_ABSENT);
do_tlbies(kvm, &rb, 1, global_invalidates(kvm, flags),
true);
+ /* Don't lose R/C bit updates done by hardware */
+ r |= be64_to_cpu(hpte[1]) & (HPTE_R_R | HPTE_R_C);
hpte[1] = cpu_to_be64(r);
}
}