From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: "David S. Miller" <davem@davemloft.net>
Cc: marcelo.tosatti@cyclades.com, akpm@osdl.org,
linux-kernel@vger.kernel.org, bcrl@kvack.org
Subject: Re: increased translation cache footprint in v2.6
Date: Mon, 27 Jun 2005 11:55:24 +1000 [thread overview]
Message-ID: <1119837324.5133.74.camel@gaston> (raw)
In-Reply-To: <20050626.173338.41634345.davem@davemloft.net>
On Sun, 2005-06-26 at 17:33 -0700, David S. Miller wrote:
> From: Marcelo Tosatti <marcelo.tosatti@cyclades.com>
> Date: Sun, 26 Jun 2005 15:52:10 -0300
>
> > Well, a TLB entry might cache different sized pages. The platform
> > support 4kb, 16kb and 8Mb (IIRC, maybe some other size also). The
> > bigger pages (8Mb) are only used to map 8Mbytes of instruction at
> > KERNELBASE, 24Mbytes of data (3 8Mbyte entries) also at KERNELBASE
> > and another 8Mbytes of the configuration registers memory space,
> > which lives outside RAM space.
>
> Why don't you use 8MB TLB entries when there is a miss to
> one of the PAGE_OFFSET pages? I'm not saying to lock them,
> just to use large 8MB TLB entries when a miss is taken for
> kernel data accesses to where the kernel maps all of lowmem.
Looks like the right thing to do indeed. Should be fairly easy, just
test if the address if negative (you'll never use >2Gb address space on
these) and ... heh, you already do it in your 8xx TLB miss handlers to
separate user page tables from kernel page tables :) So I doubt the
normal user TLB miss path will be any different and the kernel TLB miss
path though be separate and faster due to having much less misses.
Also, you may want to bump the whole page size to 64k on these,
interesting exercise but probably not very difficult. Our ABI is already
clean at the userland level for up to 64k. We did some experiments on
ppc64 with pseudo-64k pages (emulating them in software) and common
ppc32 userland is just fine.
Using a larger page size makes a lot of sense of those embedded CPUs
with small TLBs where you usually don't use much or no swap at all.
Ben.
next prev parent reply other threads:[~2005-06-27 2:00 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-06-26 17:23 increased translation cache footprint in v2.6 Marcelo Tosatti
2005-06-26 23:42 ` Paul Mackerras
2005-06-26 18:31 ` Marcelo Tosatti
2005-06-26 23:49 ` Andrew Morton
2005-06-26 18:52 ` Marcelo Tosatti
2005-06-27 0:33 ` David S. Miller
2005-06-26 19:09 ` Marcelo Tosatti
2005-06-27 0:53 ` David S. Miller
2005-06-27 15:57 ` Dan Malek
2005-06-27 19:50 ` David S. Miller
2005-06-27 20:35 ` Dan Malek
2005-06-28 6:18 ` Benjamin Herrenschmidt
2005-06-28 13:42 ` Dan Malek
2005-06-27 15:46 ` Dan Malek
2005-06-28 6:21 ` Benjamin Herrenschmidt
2005-06-28 13:49 ` Dan Malek
2005-06-27 1:55 ` Benjamin Herrenschmidt [this message]
-- strict thread matches above, loose matches on Subject: below --
2005-06-27 19:04 Al Boldi
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=1119837324.5133.74.camel@gaston \
--to=benh@kernel.crashing.org \
--cc=akpm@osdl.org \
--cc=bcrl@kvack.org \
--cc=davem@davemloft.net \
--cc=linux-kernel@vger.kernel.org \
--cc=marcelo.tosatti@cyclades.com \
/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