I'm currently writing two modules related to XEN.
Both modules need to
acquire dynamic memory (via __get_free_pages() and kmalloc() ).
In order to reuse some code, I wrote a third module which can provide
simple memory-services to other modules:
* Allocated pages and memories of each client-module gets tracked
* When a module is about to exit, it can issue one function call to
release all of its memories
* Before first using the memory manager, each module has to obtain a
unique owner id number by calling a registration function
* by loading the memory manager with a debug argument, memory
allocations automatically get logged into syslog facility
I know, that currently each module keeps track of its memory allocations
on its own.
Is there a general interest to have such a memory manager in the kernel?