table of contents
other versions
- wheezy 3.2.78-1
VM_INSERT_PAGE(9) | Memory Management in Linux | VM_INSERT_PAGE(9) |
NAME¶
vm_insert_page - insert single page into user vmaSYNOPSIS¶
int
vm_insert_page(struct vm_area_struct * vma,
unsigned long addr,
struct page * page);
ARGUMENTS¶
vmauser vma to map to
addr
target user address of this page
page
source kernel page
DESCRIPTION¶
This allows drivers to insert individual pages they've allocated into a user vma. The page has to be a nice clean _individual_ kernel allocation. If you allocate a compound page, you need to have marked it as such (__GFP_COMP), or manually just split the page up yourself (see split_page). NOTE! Traditionally this was done with “ remap_pfn_range” which took an arbitrary page protection parameter. This doesn't allow that. Your vma protection will have to be set up correctly, which means that if you want a shared writable mapping, you'd better ask for a shared writable mapping! The page does not need to be reserved.COPYRIGHT¶
March 2016 | Kernel Hackers Manual 3.2. |