Memory Management

eldiablo@mit.edu
Sat, 02 Mar 1996 15:03:46 EST


Because my PCI bus frame grabber requires large blocks of contiguous
physical memory for DMA transfers, I modified the memory management
portion of the kernel to do kmallocs of blocks greater than 128KB.

Specifically, I added the appropriate entries to the size_descriptor
table of kmalloc.c and
modified the NR_MEM_LISTS used by the page allocation routines. So
far, I haven't experienced any problems, and the memory allocation
seems to be working fine.

However, since the change seemed so trivial, I am concerned that
there are factors of which I am unaware. The changes seem perfectly
in line with the nature of the 'buddy system', but then why has
the upper bound of kmalloc been limited to what seems a relatively
small value? Are there other dependencies, etc., which I overlooked?

I would greatly appreciate any insight into the matter.

Thanks,

Matt Sexton
eldiablo@mit.edu