Pinned TLB entries with 2.6 linux kernel on PPC4xx

2006-06-01 Thread Chris Dumoulin
Does the idea of creating pinned TLB entries (ones that will never be 
overwritten) make sense for a PPC4xx (specifically PPC405) 2.6 linux 
kernel? If so, how would this be accomplished?

Regards,
Chris
-- 
*--Christopher Dumoulin--*
Software Team Leader

http://ics-ltd.com/
http://ics-ltd.com/

Interactive Circuits and Systems Ltd.
5430 Canotek Road
Ottawa, ON
K1J 9G2
(613)749-9241
1-800-267-9794 (USA only)


This e-mail is private and confidential and is for the addressee only. 
If misdirected, please notify us by telephone and confirm that it has 
been deleted from your system and any hard copies destroyed. You are 
strictly prohibited from using, printing, distributing or disseminating 
it or any information contained in it save to the intended recipient.



Pinned TLB entries with 2.6 linux kernel on PPC4xx

2006-06-01 Thread Eugene Surovegin
On Thu, Jun 01, 2006 at 03:29:37PM -0400, Chris Dumoulin wrote:
 Does the idea of creating pinned TLB entries (ones that will never be 
 overwritten) make sense for a PPC4xx (specifically PPC405) 2.6 linux 
 kernel? If so, how would this be accomplished?

44x kernel already pins some TLB entries, 40x may use this approach to 
increase performance (I use this in my internal 2.4 tree 
quite successfully).

Old 2.4 trees (linuxppc-2.4 or devel_2_4) have TLB pinning support 
for 40x, you can look at the implementation there.

-- 
Eugene





Pinned TLB entries with 2.6 linux kernel on PPC4xx

2006-06-01 Thread Matt Porter
On Thu, Jun 01, 2006 at 12:51:29PM -0700, Eugene Surovegin wrote:
 On Thu, Jun 01, 2006 at 03:29:37PM -0400, Chris Dumoulin wrote:
  Does the idea of creating pinned TLB entries (ones that will never be 
  overwritten) make sense for a PPC4xx (specifically PPC405) 2.6 linux 
  kernel? If so, how would this be accomplished?
 
 44x kernel already pins some TLB entries, 40x may use this approach to 
 increase performance (I use this in my internal 2.4 tree 
 quite successfully).
 
 Old 2.4 trees (linuxppc-2.4 or devel_2_4) have TLB pinning support 
 for 40x, you can look at the implementation there.

The partial kernel lowmem pinning for ppc405 was deprecated in favor
of having all of kernel lowmem covered by large pages and then large
TLBs loaded on tlb misses. This is regarding 2.6, of course.

It can also be extended to handle arbitrary areas other than kernel
lowmem.

-Matt