From: "Gleb O. Raiko" <raiko@niisi.msk.ru>
To: Ralf Baechle <ralf@linux-mips.org>
Cc: "Maciej W. Rozycki" <macro@linux-mips.org>,
Kevin Cernekee <cernekee@gmail.com>,
"wilbur.chan" <wilbur512@gmail.com>,
Linux MIPS Mailing List <linux-mips@linux-mips.org>
Subject: Re: Question about Context register in TLB refilling
Date: Mon, 18 Oct 2010 18:03:51 +0400 [thread overview]
Message-ID: <4CBC53C7.3020204@niisi.msk.ru> (raw)
In-Reply-To: <20101018124838.GF27377@linux-mips.org>
On 18.10.2010 16:48, Ralf Baechle wrote:
> On Mon, Oct 18, 2010 at 02:46:02PM +0400, Gleb O. Raiko wrote:
> 64 context on R2000/R3000, 256 on everything else but R6000 and RM9000
> series, 4096 contexts on RM9000 and that context caching is already
> there. It's fairly lightweight except in the rare case where the
> PID / ASID number overflows and a full TLB flush becomes necessary. A
> mm context switch only needs to reload the one wired TLB entry that maps
> the pagetables so that's not too bad.
Ralf,
I counted from the opposite side. Size of KSEG2+KSEG3 is 1 GB, flat page
table shall be 8 MB aligned to be stored in cp0 context, so we end up
with 128 page tables in the theory (we have to reserve some space for
other business too in practice).
If we are going to use a "standard" approach when only current page
table is mapped, we know the address at compile time and don't need cp0
context at all. We can even has as many page tables as number of ASIDs
for cpus with multiple page sizes but cp0 context is still out of play
anyway.
Gleb.
next prev parent reply other threads:[~2010-10-18 13:48 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-10-17 15:51 Question about Context register in TLB refilling wilbur.chan
2010-10-17 17:50 ` Kevin Cernekee
2010-10-17 19:33 ` Maciej W. Rozycki
2010-10-17 20:52 ` Kevin Cernekee
2010-10-17 21:56 ` Maciej W. Rozycki
2010-10-18 0:00 ` Ralf Baechle
2010-10-18 10:46 ` Gleb O. Raiko
2010-10-18 12:48 ` Ralf Baechle
2010-10-18 14:03 ` Gleb O. Raiko [this message]
2010-10-24 5:26 ` Maciej W. Rozycki
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=4CBC53C7.3020204@niisi.msk.ru \
--to=raiko@niisi.msk.ru \
--cc=cernekee@gmail.com \
--cc=linux-mips@linux-mips.org \
--cc=macro@linux-mips.org \
--cc=ralf@linux-mips.org \
--cc=wilbur512@gmail.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.