page_cache_async_readahead — file readahead for marked pages


void page_cache_async_readahead (struct address_space * mapping,
 struct file_ra_state * ra,
 struct file * filp,
 struct page * page,
 pgoff_t offset,
 unsigned long req_size);


struct address_space * mapping

address_space which holds the pagecache and I/O vectors

struct file_ra_state * ra

file_ra_state which holds the readahead state

struct file * filp

passed on to ->readpage and ->readpages

struct page * page

the page at offset which has the PG_readahead flag set

pgoff_t offset

start offset into mapping, in pagecache page-sized units

unsigned long req_size

hint: total size of the read which the caller is performing in pagecache pages


page_cache_async_readahead should be called when a page is used which has the PG_readahead flag; this is a marker to suggest that the application has used up enough of the readahead window that we should start pulling in more pages.