Subject: Re: how to increase size of kernel virtual map
To: None <port-i386@netbsd.org>
From: Jason R Thorpe <thorpej@zembu.com>
List: port-i386
Date: 04/19/2000 07:54:51
On Tue, Apr 18, 2000 at 05:55:25PM -0400, Michael Richardson wrote:

 >   What is the size of the kernel virtual map?

In -current, the kernel has a total of 1G of virtual address space for
its use; userland has the other 3G.  However, that 1G of KVA space is
used for a lot of things, so you can't just assume you can consume it.

 >   I have a device with two 2^28 sized BARs. (Optionally, this will be
 > in 64-bit address space later on). 
 > 
 >     Base address register at 0x18
 >       type: 32-bit noncacheable memory
 >       base: 0xe0000000, size: 0x10000000
 >     Base address register at 0x1c
 >       type: 32-bit noncacheable memory
 >       base: 0xd0000000, size: 0x10000000
 > 
 > pweleven0: pci_mapreg_map failed for bar 18 (pw1100_snoop1)
 > pweleven0: pci_mapreg_map failed for bar 1c (pw1100_snoop2)
 > 
 >   I expect that I need to make the kernel virtual map larger.
 >   We can map a 2^26 sized region okay.

*yow*.

What, exactly, is in these two non-cacheable memory regions?

Quite honestly, I would look for a different strategy for mapping the
device, if it were me.  That's an awful lot of KVA space to be consuming
for just one device.

-- 
        -- Jason R. Thorpe <thorpej@zembu.com>