Port-amiga archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: pmap vs. large Zorro III space



On Fri, 22 Jul 2011 20:09:17 +0200
Rados?aw Kujawa <radoslaw.kujawa%c0ff33.net@localhost> wrote:

> Yesterday I've installed Matay Prometheus PCI, which allocates very large
> Zorro III space (512MB). 
> 
> As soon as kernel was loaded, panic occured with  "uvm_km_suballoc:
> unable to allocate space in parent map" error.
> [...]
> probaby related to page tables map allocation and that I might want to
> increase VM_KERNEL_PT_PAGES (defined in vmparam.h).

Yes. I doubt that there is enough space for page tables to map the whole
512MB area.


> I've tried increasing
> it a bit (to 12, 15, 24), but no change was visible. Increasing the value
> too much (for example to 32) leads to a different kind of panic:

Hmm. I cannot say that I understand the pmap module either, but you
might have seen that VM_KERNEL_PT_PAGES is assigned to Sysptsize in
m68k/m68k/pmap_motorola.c?

The key to understand all the pmap allocation stuff is to go through
start_c() in amiga_init.c. Here Sysptsize will be used to allocate space
for the page tables, and the initial MMU setup occurs.

To map 512MB you would need 512MB/4096 = 131072 page descriptors, which
fit into 131072/(4096/4) = 128 pages. That's a lot more than the default
of 8 for VM_KERNEL_PT_PAGES.

On the other hand 128 pages are (only) 512k. So it should be possible
somehow, provided you have enough RAM...?

-- 
Frank Wille


Home | Main Index | Thread Index | Old Index