> In a network driver, I tried to allocate memory for DMA buffer of
> length 132 KB and the call (kmalloc()) failed. Hacking through
> kmalloc.c, I found that it does not allow allocating memory more
> than (128K - 24) bytes, if the page size is 4KB.
> 1. Why is that limitation ?
Because the largest buddy size in the Linux MM is 128 kB.
> 2. Is there any way to allocate 132 KB memory (physically contiguous) ?
Use the Bigphysarea patch, which is available from almost
anywhere (don't know a URL from the top of my head however).
Rik.
+-------------------------------------------------------------------+
| Linux memory management tour guide. H.H.vanRiel@phys.uu.nl |
| Scouting Vries cubscout leader. http://www.phys.uu.nl/~riel/ |
+-------------------------------------------------------------------+
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/