From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Avi Kivity <avi@redhat.com>
Cc: kvm-ppc@vger.kernel.org,
linuxppc-dev <linuxppc-dev@lists.ozlabs.org>,
Alexander Graf <agraf@suse.de>, KVM list <kvm@vger.kernel.org>
Subject: Re: [PATCH 0/2] Faster MMU lookups for Book3s v3
Date: Fri, 02 Jul 2010 12:54:29 +1000 [thread overview]
Message-ID: <1278039269.4200.376.camel@pasglop> (raw)
In-Reply-To: <4C2C9B36.8000002@redhat.com>
On Thu, 2010-07-01 at 16:42 +0300, Avi Kivity wrote:
> > So I think the only reasonable way to implement page ageing is to
> unmap
> > pages. And that's slow, because it means we have to map them again
> on
> > access. Bleks. Or we could look for the HTAB entry and only unmap
> them
> > if the entry is moot.
> >
>
> I think it works out if you update struct page when you clear out an
> HTAB.
Hrm... going to struct page without going through the PTE might work out
indeed. We can get to the struct page from the RPN.
However, that means -reading- the hash entry we want to evict, and
that's a fairly expensive H-Call, especially if we ask phyp to
back-translate the real address into a logical (partition) address so we
can get to the struct page.... While we might be able to reconstitute
the virtual address from the hash content + bucket address. However,
from the vsid back to the page table might be tricky as well.
IE. Either way, it's not a simple process.
Now, eviction is rare, our MMU hash is generally big, so maybe the read
back with back translate to hit struct page might be the way to go here.
As for other kind of invalidations, we do have the PTE around when they
happen so we can go fetch the HW ref bit and update the PTE I suppose.
Ben.
next prev parent reply other threads:[~2010-07-02 2:54 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-06-30 13:18 [PATCH 0/2] Faster MMU lookups for Book3s v3 Alexander Graf
2010-06-30 13:18 ` [PATCH 1/2] KVM: PPC: Add generic hpte management functions Alexander Graf
2010-06-30 13:18 ` [PATCH 2/2] KVM: PPC: Make use of hash based Shadow MMU Alexander Graf
2010-07-01 7:29 ` [PATCH 0/2] Faster MMU lookups for Book3s v3 Avi Kivity
2010-07-01 8:18 ` Alexander Graf
2010-07-01 8:40 ` Avi Kivity
2010-07-01 10:00 ` Alexander Graf
2010-07-01 11:14 ` Avi Kivity
2010-07-01 12:28 ` Alexander Graf
2010-07-01 12:43 ` Avi Kivity
2010-07-01 12:52 ` Alexander Graf
2010-07-01 13:42 ` Avi Kivity
2010-07-02 2:54 ` Benjamin Herrenschmidt [this message]
2010-07-02 2:50 ` Benjamin Herrenschmidt
2010-07-01 15:40 ` Marcelo Tosatti
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1278039269.4200.376.camel@pasglop \
--to=benh@kernel.crashing.org \
--cc=agraf@suse.de \
--cc=avi@redhat.com \
--cc=kvm-ppc@vger.kernel.org \
--cc=kvm@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).