Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\filemap.c Create Date:2022-07-28 14:01:59
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:d_get_pages_range - gang pagecache lookup*@mapping: The address_space to search*@start: The starting page index*@end: The final page index (inclusive)*@nr_pages: The maximum number of pages*@pages: Where the resulting pages are placed*

Proto:unsigned find_get_pages_range(struct address_space *mapping, unsigned long *start, unsigned long end, unsigned int nr_pages, struct page **pages)

Type:unsigned

Parameter:

TypeParameterName
struct address_space *mapping
unsigned long *start
unsigned longend
unsigned intnr_pages
struct page **pages
1795  XA_STATE() - Declare an XArray operation state.*@name: Name of this operation state (usually xas).*@array: Array to operate on.*@index: Initial index of interest.* Declare and initialise an xa_state on the stack.(xas, & i_pages, * start)
1797  ret = 0
1799  If Value for the false possibility is greater at compile time(!nr_pages) Then Return 0
1802  _read_lock() - mark the beginning of an RCU read-side critical section* When synchronize_rcu() is invoked on one CPU while other CPUs* are within RCU read-side critical sections, then the* synchronize_rcu() is guaranteed to block until after all the other
1804  If xas_retry() - Retry the operation if appropriate.*@xas: XArray operation state.*@entry: Entry from xarray.* The advanced functions may sometimes return an internal entry, such as* a retry entry or a zero entry. This function sets up the @xas to restart Then Continue
1807  If xa_is_value() - Determine if an entry is a value.*@entry: XArray entry.* Context: Any context.* Return: True if the entry is a value, false if it is a pointer. Then Continue
1810  If Not page_cache_get_speculative(page) Then Go to retry
1814  If Value for the false possibility is greater at compile time(page != xas_reload() - Refetch an entry from the xarray) Then Go to put_page
1817  pages[ret] = find_subpage(page, xa_index)
1818  If ++ret == nr_pages Then
1819  start = xa_index + 1
1820  Go to out
1822  Continue
1823  put_page :
1824  put_page(page)
1825  retry :
1826  xas_reset() - Reset an XArray operation state.*@xas: XArray operation state.* Resets the error or walk state of the @xas so future walks of the* array will start from the root. Use this if you have dropped the* xarray lock and want to reuse the xa_state.
1835  If end == The type of an index into the pagecache - 1 Then start = The type of an index into the pagecache - 1
1837  Else start = end + 1
1839  out :
1840  _read_unlock() - marks the end of an RCU read-side critical section.* In most situations, rcu_read_unlock() is immune from deadlock.* However, in kernels built with CONFIG_RCU_BOOST, rcu_read_unlock()
1842  Return ret
Caller
NameDescribe
pagevec_lookup_rangepagevec_lookup_range - gang pagecache lookup*@pvec: Where the resulting pages are placed*@mapping: The address_space to search*@start: The starting page index*@end: The final page index* pagevec_lookup_range() will search for & return a group of up to
find_get_pages