summaryrefslogtreecommitdiff
path: root/arch/powerpc/include/asm/kvm_book3s.h
diff options
context:
space:
mode:
authorPaul Mackerras <paulus@samba.org>2015-06-24 14:18:05 +0300
committerAlexander Graf <agraf@suse.de>2015-08-22 12:16:18 +0300
commit1e5bf454f58731e360e504253e85bae7aaa2d298 (patch)
tree06e2668ccf5a62c069a94147f8c08debf36d50fc /arch/powerpc/include/asm/kvm_book3s.h
parentb4deba5c41e9f6d3239606c9e060853d9decfee1 (diff)
downloadlinux-1e5bf454f58731e360e504253e85bae7aaa2d298.tar.xz
KVM: PPC: Book3S HV: Fix race in reading change bit when removing HPTE
The reference (R) and change (C) bits in a HPT entry can be set by hardware at any time up until the HPTE is invalidated and the TLB invalidation sequence has completed. This means that when removing a HPTE, we need to read the HPTE after the invalidation sequence has completed in order to obtain reliable values of R and C. The code in kvmppc_do_h_remove() used to do this. However, commit 6f22bd3265fb ("KVM: PPC: Book3S HV: Make HTAB code LE host aware") removed the read after invalidation as a side effect of other changes. This restores the read of the HPTE after invalidation. The user-visible effect of this bug would be that when migrating a guest, there is a small probability that a page modified by the guest and then unmapped by the guest might not get re-transmitted and thus the destination might end up with a stale copy of the page. Fixes: 6f22bd3265fb Signed-off-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'arch/powerpc/include/asm/kvm_book3s.h')
0 files changed, 0 insertions, 0 deletions