函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:include\linux\page-flags.h Create Date:2022-07-27 06:40:09
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:PageUnevictable

函数原型:static inline __attribute__((__always_inline__)) int PageUnevictable(struct page *page)

返回类型:int

参数:

类型参数名称
struct page *page
394  返回:st_bit - Determine whether a bit is set*@nr: bit number to test*@addr: Address to start counting from
调用者
名称描述
pagevec_move_tail_fn
rotate_reclaimable_pageWriteback is about to end against a page which has been marked for immediate* reclaim. If it still appears to be reclaimable, move it to the tail of the* inactive list.
__activate_page
mark_page_accessedMark a page as having seen activity.* inactive,unreferenced -> inactive,referenced* inactive,referenced -> active,unreferenced* active,unreferenced -> active,referenced* When a newly allocated page is not yet visible, so safe for non-atomic ops,
lru_cache_addlru_cache_add - add a page to a page list*@page: the page to be added to the LRU.* Queue the page for addition to the LRU via pagevec. The decision on whether* to add the page to the [in]active [file|anon] list is deferred until the* pagevec is drained
lru_deactivate_file_fnIf 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
lru_deactivate_fn
lru_lazyfree_fn
deactivate_file_pagedeactivate_file_page - forcefully deactivate a file page*@page: page to deactivate* This function hints the VM that @page is a good reclaim candidate,* for example if its invalidation fails due to the page being dirty* or under writeback.
deactivate_pagedeactivate_page - deactivate a page*@page: page to deactivate* deactivate_page() moves @page to the inactive list if @page was on the active* list and was not an unevictable page. This is done to accelerate the reclaim* of @page.
mark_page_lazyfreemark_page_lazyfree - make an anon page lazyfree*@page: page to deactivate* mark_page_lazyfree() moves @page to the inactive file list.* This is done to accelerate the reclaim of @page.
lru_add_page_tailsed by __split_huge_page_refcount()
shrink_page_listshrink_page_list() returns the number of reclaimed pages
reclaim_clean_pages_from_list
__isolate_lru_pageAttempt to remove the specified page from its LRU. Only take this page* if it is of the appropriate PageActive status. Pages which are being* freed elsewhere are also ignored.* returns 0 on success, -ve errno on failure.
check_move_unevictable_pagesheck_move_unevictable_pages - check pages for evictability and move to* appropriate zone lru list*@pvec: pagevec with lru pages to check* Checks pages for evictability, if an evictable page is in the unevictable
clear_page_mlockLRU accounting for clear_page_mlock()
__munlock_isolation_failedAccounting for page isolation fail during munlock* Performs accounting when page isolation fails in munlock. There is nothing* else to do because it means some other task has already removed the page* from the LRU
madvise_cold_or_pageout_pte_range
migrate_page_statesCopy the page to its new location
page_off_lrupage_off_lru - which LRU list was page on? clearing its lru flags.*@page: the page to test* Returns the LRU list a page was on, as an index into the array of LRU* lists; and clears its Unevictable or Active flags, ready for freeing.
page_lrupage_lru - which LRU list should a page be on?*@page: the page to test* Returns the LRU list a page should be on, as an index* into the array of LRU lists.