Subject: Re: [V4,1/4] KVM: PPC: Use READ_ONCE when dereferencing pte_t pointer

From: Benjamin Herrenschmidt <[email-masked]>
Date: Mon, 30 Mar 2015 10:41:03 +1100

On Sun, 2015-03-29 at 22:16 +0530, Aneesh Kumar K.V wrote:
> Michael Ellerman <[email-masked]> writes:
> 
> > On Thu, 2015-26-03 at 13:13:39 UTC, "Aneesh Kumar K.V" wrote:
> >> pte can get updated from other CPUs as part of multiple activities
> >> like THP split, huge page collapse, unmap. We need to make sure we
> >> don't reload the pte value again and again for different checks.
> >> 
> >> ---
> >>  arch/powerpc/include/asm/kvm_book3s_64.h |  5 ++++-
> >>  arch/powerpc/kvm/e500_mmu_host.c         | 20 ++++++++++++--------
> >>  2 files changed, 16 insertions(+), 9 deletions(-)
> >
> > So this series is partly KVM but mostly powerpc.
> >
> > I assume you can't split it into two separate series easily?
> 
> Yes, will do. But before that I was looking for feedback from Ben or
> Paul.
> 
> >
> > You haven't sent it to the KVM lists or to Alex AFAICS. You'll need to do that
> > for the KVM pieces at least. We can probably take it all via powerpc, but I'll
> > need an ACK from Alex at least.
> >
> 
> If I can get an ack from Ben, that makes it easy for the kvm list.

Ack. Using ACCESS_ONCE in a lockless access of the PTE that does
multiple checks makes sense.

Cheers,
Ben.