Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\readahead.c Create Date:2022-07-28 14:12:14
Last Modify:2020-03-17 21:13:07 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:page_cache_sync_readahead - generic file readahead*@mapping: address_space which holds the pagecache and I/O vectors*@ra: file_ra_state which holds the readahead state*@filp: passed on to ->readpage() and ->readpages()*@offset: start offset into @mapping,

Proto:void page_cache_sync_readahead(struct address_space *mapping, struct file_ra_state *ra, struct file *filp, unsigned long offset, unsigned long req_size)

Type:void

Parameter:

TypeParameterName
struct address_space *mapping
struct file_ra_state *ra
struct file *filp
unsigned longoffset
unsigned longreq_size
514  If Not Maximum readahead window Then Return
517  If blk_cgroup_congested() Then Return
521  If filp && f_mode & Expect random access pattern Then
522  Chunk the readahead into 2 megabyte units, so that we don't pin too much* memory at once.
523  Return
527  A minimal readahead algorithm for trivial sequential/random reads.
Caller
NameDescribe
do_sync_mmap_readaheadSynchronous readahead happens when we don't even find a page in the page* cache at all. We don't want to perform IO under the mmap sem, so if we have* to drop the mmap sem we return the file that was pinned in order for us to do* that