remap_vmalloc_range_partial — map vmalloc pages to userspace


int remap_vmalloc_range_partial (struct vm_area_struct * vma,
 unsigned long uaddr,
 void * kaddr,
 unsigned long size);


struct vm_area_struct * vma

vma to cover

unsigned long uaddr

target user address to start at

void * kaddr

virtual address of vmalloc kernel memory

unsigned long size

size of map area


0 for success, -Exxx on failure

This function checks that kaddr is a valid vmalloc'ed area, and that it is big enough to cover the range starting at uaddr in vma. Will return failure if that criteria isn't met.

Similar to remap_pfn_range (see mm/memory.c)