函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\swap.c Create Date:2022-07-27 15:37:06
Last Modify:2022-05-23 13:40:24 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:If the page can not be invalidated, it is moved to the* inactive list to speed up its reclaim. It is moved to the* head of the list, rather than the tail, to give the flusher* threads some time to write it out, as this is much more

函数原型:static void lru_deactivate_file_fn(struct page *page, struct lruvec *lruvec, void *arg)

返回类型:void

参数:

类型参数名称
struct page *page
struct lruvec *lruvec
void *arg
507  如果非PageLRU(page)则返回
510  如果PageUnevictable(page)则返回
514  如果page_mapped(page)则返回
517  active等于PageActive(page)
518  file等于page_is_file_cache - should the page be on a file LRU or anon LRU?*@page: the page to test* Returns 1 if @page is page cache page backed by a regular filesystem,* or 0 if @page is anonymous, tmpfs or otherwise ram or swap backed
519  lru等于page_lru_base_type - which LRU list type should a page be on?*@page: the page to test* Used for LRU list index arithmetic.* Returns the base LRU type - file or anon - @page should be on.
521  del_page_from_lru_list(page, lruvec, lru + active)
522  ClearPageActive(page)
523  ClearPageReferenced(page)
525  如果Only test-and-set exist for PG_writeback. The unconditional operators are* risky: they bypass page accounting.PageDirty(page)则
531  add_page_to_lru_list(page, lruvec, lru)
532  PG_readahead is only used for reads; PG_reclaim is only for writes
533  否则
538  add_page_to_lru_list_tail(page, lruvec, lru)
539  __count_vm_event(PGROTATED)
542  如果active__count_vm_event(PGDEACTIVATE)
544  update_page_reclaim_stat(lruvec, file, 0)