mem_map_reserve, mem_map_unreserve - Manipulate flags of
virtual memory pages.
These macros cause a page to become reserved/unreserved. A
reserved page is reserved from any further consideration by
the linux kernel, meaning it is not scanned as potentially
pageable, or available for page allocation. The kernel
treats reserved pages as memory-mapped hardware.
It makes sense for a driver to mark a page reserved, for
example, if the driver supports mmap(2) with dynamically
allocated pages that the target device can access via DMA.
MAP_NR(9), get_free_pages(9), mmap(2)
Stephen Williams <email@example.com>
If a page is marked reserved, a call to free_page(9) will
silenty ignore it. If the page was originally allocated by
get_free_page, you must remember to unmark the page before
releasing it to the system. Otherwise, the page is lost.