lkml.org 
[lkml]   [2002]   [Nov]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: ioremap returns NULL
 >>[...]
>> For each card I ioremap() 2 * 16 MB of PCI memory space.
>> It succeeds for the 1st card but for the 2nd card I get NULL
>> as result. This means I cannot use the 2nd card...
>
>I think you are screwed. The ioremap grabs from vmalloc area,
>which is something like 64MB on i386. The best option is
>to rewrite the driver to allocate less, and perhaps use
>fewer modules.


The size of the vmalloc area is 128 MB, 96 for highmem kernels.
Either:
- compile a kernel without 4G support, then you have 128 MB
- increase PKMAP_BASE (include/asm-i386/highmem.h) to
0xff800000 (it's 0xfe000000 in 2.5.50)
Right now 32 MB virtual memory are reserved for kmap, but only 4 MB are
used. Changing PKMAP_BASE gives you 24 MB additional vmalloc space for free.
- increase __VMALLOC_RESERVE.

--
Manfred



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:31    [W:0.996 / U:0.776 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site