vm_map_ram (9) - Linux Manuals
vm_map_ram: map pages linearly into kernel virtual address (vmalloc space)
NAME
vm_map_ram - map pages linearly into kernel virtual address (vmalloc space)
SYNOPSIS
-
void * vm_map_ram(struct page
** pages, unsigned intcount, int node, pgprot_t prot);
ARGUMENTS
pages
-
- an array of pointers to the pages to be mapped
count
- number of pages
node
- prefer to allocate data structures on this node
prot
- memory protection to use. PAGE_KERNEL for regular RAM
DESCRIPTION
If you use this function for less than VMAP_MAX_ALLOC pages, it could be faster than vmap so it's good. But if you mix long-life and short-life objects with vm_map_ram, it could consume lots of address space through fragmentation (especially on a 32bit machine). You could see failures in the end. Please use this function for short-lived objects.
RETURN
a pointer to the address that has been mapped, or NULL on failure
COPYRIGHT