Subject: Re: Section PTEs
To: Chris Gilbert <chris@paradox.demon.co.uk>
From: Matt Thomas <matt@3am-software.com>
List: port-arm
Date: 06/04/2001 10:50:58
At 09:32 AM 6/4/2001 +0100, Chris Gilbert wrote:
>On Monday 04 June 2001 5:44 am, Matt Thomas wrote:
> > Just like what I'm going with the PPC pmap, you might consider
> > using the section (1MB) PTEs to some or all of memory.
> > Considering the DNARD has a max of 64MB of RAM, sacrificing
> > 64MB of KVA to map that memory and then use PMAP_MAP_POOLPAGE
> > to map pools.
>
>Would be good to do, however currently the start of KVM is 0xf1000000,
>running using 80MB's on the acorn32, upto 112MB on footbridge based hardware.
> If we wanted to do the above we need to first lower the start of the
> kernel.
> I'd actually suggest lowering it to 0xC000000 which gives us 768MB of extra
>kvm space. It does mean that we need to implement the pmap_growkernel call.
>Having looked over the i386 version looks more to be a matter of knowing what
>active pmaps there are, i386 just has a list of them. I'll look into getting
>growkernel implemented. Then we have to start checking that bootloaders can
>cope with the change of address for the kernel.
More KVA space would be good. The current PPC stuff has the same limitation
of 256MB of KVA space.
>Although perhaps we don't actually need to move the start of the kernel, and
>we just use 0xC0000000 - 0xefffffff as the kvm space, and shift
>PAGE_TABLE_SPACE_START up to 0xf10000000. And then map the whole of
>0xc0000000 to 0xf0ffffff into user processes. But that all seems a tad icky
>just to avoid having to boot from somewhere other than 0xf0000000. I'll
>investigate booting from somewhere else in memory and do some test kernels.
Why can't we boot into 0xf1000000 and have reserve where the kernel is?
>First we really have to see if the bootloaders can cope.
>
> > For those systems with lots of RAM, use the same hook in UVM
> > that will be added to "cluster" page allocations to certain
> > memory regions.
>
>Any docs on this? or is it an unimplemented thing at the moment?
Not yet. Jason & I need to think out the interface. It'd be nice to
make it applicable to other platforms which have mechanisms to address
a large amount of memory with a single TLB/PTE entries. (should be faster
and cut down on TLB thrashing).
--
Matt Thomas Internet: matt@3am-software.com
3am Software Foundry WWW URL: http://www.3am-software.com/bio/matt/
Cupertino, CA Disclaimer: I avow all knowledge of this message