[PATCH] 8xx: map_page() skip pinned region and tlbie debugging aid

Marcelo Tosatti marcelo.tosatti at cyclades.com
Mon Jun 27 23:39:30 EST 2005


On Sun, Jun 26, 2005 at 11:30:04AM -0300, Marcelo Tosatti wrote:
> 
> Hi Dan,
> 
> On Sat, Jun 25, 2005 at 06:24:47PM -0400, Dan Malek wrote:
> > 
> > On Jun 25, 2005, at 10:53 AM, Marcelo Tosatti wrote:
> > 
> > >Dan: I dont think ioremap() is an issue because it never works inside 
> > >the
> > >kernel's static virtual address space (which is the only one we're 
> > >interested
> > >in having pinned at the moment).
> > 
> > Take a close look at the initialization code.  I believe it also
> > pins the IMMR space, which is subject to ioremap().
> 
> OK. Now that makes me think that the IMMR pinned entry is also always
> thrashed by the tlbie at map_page() :(

Bullshit, map_page()'s call for flush_HPTE() is conditioned by "mem_init_done", 
and mapin_ram() is called before mem_init_done is set.

> The IMMR space is a 16kB window (correct?), so I wonder if it might
> be better to the use occupied pinned slot for another more accessed
> region (an 8MB one preferably!).

Thats still some food for thought...



More information about the Linuxppc-embedded mailing list