函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:deactivate_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.

函数原型:void deactivate_file_page(struct page *page)

返回类型:void

参数:

类型参数名称
struct page *page
640  如果PageUnevictable(page)则返回
643  如果此条件成立可能性大(为编译器优化)(Try to grab a ref unless the page has a refcount of zero, return false if* that is the case.* This can be called when MMU is off so it must not access* any of the virtual mappings.)则
644  pvec等于Must be an lvalue. Since @var must be a simple identifier,* we force a syntax error here if it isn't.(lru_deactivate_file_pvecs)
646  如果非Add a page to a pagevec. Returns the number of slots still available.PageCompound(page)则pagevec_lru_move_fn(pvec, 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, NULL)
648  The weird & is necessary because sparse considers (void)(var) to be* a direct dereference of percpu variable (var).(lru_deactivate_file_pvecs)
调用者
名称描述
invalidate_mapping_pagesvalidate_mapping_pages - Invalidate all the unlocked pages of one inode*@mapping: the address_space which holds the pages to invalidate*@start: the offset 'from' which to invalidate*@end: the offset 'to' which to invalidate (inclusive)* This function only