find_or_create_page(9)

find_or_create_page9

Locate or add a pagecache page

Usage

struct page * find_or_create_page(struct address_space * mapping, pgoff_t index, gfp_t gfp_mask);

Arguments

mapping

the page's address_space

index

the page's index into the mapping

gfp_mask

page allocation mode

Overview

Locates a page in the pagecache. If the page is not present, a new page is allocated using gfp_mask and is added to the pagecache and to the VM's LRU list. The returned page is locked and has its reference count incremented.

find_or_create_page may sleep, even if gfp_flags specifies an atomic allocation!

find_or_create_page returns the desired page's address, or zero on memory exhaustion.

Releases

4 releases since Debian 4.0 (Etch); the text changed 3 times.

  1. 4.0
  2. 5.0
  3. 6.0
  4. 7

From linux-manual-3.2 3.2.78-1 in Debian 7 (Wheezy). Parsed by carta from the page's man source.