Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Functions
gup.c File Reference
#include <linux/sched.h>
#include <linux/mm.h>
#include <linux/hugetlb.h>
#include <linux/vmstat.h>
#include <linux/pagemap.h>
#include <linux/rwsem.h>
#include <asm/pgtable.h>

Go to the source code of this file.

Functions

int __get_user_pages_fast (unsigned long start, int nr_pages, int write, struct page **pages)
 
int get_user_pages_fast (unsigned long start, int nr_pages, int write, struct page **pages)
 

Function Documentation

int __get_user_pages_fast ( unsigned long  start,
int  nr_pages,
int  write,
struct page **  pages 
)

Definition at line 170 of file gup.c.

int get_user_pages_fast ( unsigned long  start,
int  nr_pages,
int  write,
struct page **  pages 
)

get_user_pages_fast() - pin user pages in memory : starting user address : number of pages from start to pin : whether pages will be written to : array that receives pointers to the pages pinned. Should be at least nr_pages long.

Attempt to pin user pages in memory without taking mm->mmap_sem. If not successful, it will fall back to taking the lock and calling get_user_pages().

Returns number of pages pinned. This may be fewer than the number requested. If nr_pages is 0 or negative, returns 0. If no pages were pinned, returns -errno.

Definition at line 218 of file gup.c.