On Wed, Jan 10, 2018 at 05:04:39PM +1100, David Gibson wrote: > The KVM_PPC_ALLOCATE_HTAB ioctl(), implemented by kvmppc_alloc_reset_hpt() > is supposed to completely clear and reset a guest's Hashed Page Table (HPT) > allocating or re-allocating it if necessary. > > In the case where an HPT of the right size already exists and it just > zeroes it, it forces a TLB flush on all guest CPUs, to remove any stale TLB > entries loaded from the old HPT. > > However, that situation can arise when the HPT is resizing as well - or > even when switching from an RPT to HPT - so those cases need a TLB flush as > well. > > So, move the TLB flush to trigger in all cases except for errors. > > Signed-off-by: David Gibson <david@xxxxxxxxxxxxxxxxxxxxx> > --- > arch/powerpc/kvm/book3s_64_mmu_hv.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > Paul, this is based on Paolo's KVM tree, but it should apply without > modification to pretty much any vaguely current tree. It's a pretty > nasty bug - the case we've found hitting it in the wild is a bit > esoteric, but it could in theory affect other situations as well. > > Please apply ASAP, and should probably be queued for the stable > branches as well. Thanks, applied to my kvm-ppc-fixes branch, and I added cc: stable@xxxxxxxxxxxxxxx. Paul.