函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\filemap.c Create Date:2022-07-27 15:23:36
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:page_cache_delete_batch - delete several pages from page cache*@mapping: the mapping to which pages belong*@pvec: pagevec with pages to delete* The function walks over mapping->i_pages and removes pages passed in @pvec* from the mapping

函数原型:static void page_cache_delete_batch(struct address_space *mapping, struct pagevec *pvec)

返回类型:void

参数:

类型参数名称
struct address_space *mapping
struct pagevec *pvec
297  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, index)
298  total_pages等于0
299  i等于0
302  mapping_set_update( & xas, mapping)
304  如果i大于等于pagevec_count(pvec)则退出
308  如果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.则继续下一循环
317  如果page不等于pages[i]则
318  VM_BUG_ON_PAGE( Our offset within mapping. > index, page)
320  继续下一循环
323  WARN_ON_ONCE(!PageLocked(page))
325  如果 Our offset within mapping. 恒等于xa_index See page-flags.h for PAGE_MAPPING_FLAGS = NULL
334  如果 Our offset within mapping. Returns the number of pages in this potentially compound page. 减1恒等于xa_indexi自加
336  xas_store() - Store this entry in the XArray
337  total_pages自加
339  nrpages减等于total_pages
调用者
名称描述
delete_from_page_cache_batch