2000-11-28 07:34:39

by Justin Schoeman

[permalink] [raw]
Subject: Question on vmalloc() memory management

Hi everybody,

I would just like to find out if there is any real reason why there are
no memory management functions for handling vmalloc()ed memory. If you
have a look at bttv.c, you will see definitions of:

kvirt_to_pa (translate a vmalloc()ed address to a page number)
rvmalloc (malloc and mark as reserved)
rvfree (free and mark as unreserved)

These functions are duplicated (in fact, usually a direct copy), in just
about every video4linux driver (including many as standalone modules),
and some network and sound drivers.

Wouldn't it be a good idea to provide these functions as a standard part
of the mm subsystem of the kernel. The functions are very small, but
closely related to the vm subsystem - standardising these functions
should reduce the kernel size a little, and also make module development
a little easier (I personally have been caught once or twice by changes
in the mm subsystem breaking the kvirt to phys translation).

Would such a patch be acceptable? If it is, I will be glad to make a
patch and submit it.