函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:PageDirty

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

返回类型:int

参数:

类型参数名称
struct page *page
318  返回:st_bit - Determine whether a bit is set*@nr: bit number to test*@addr: Address to start counting from
调用者
名称描述
unaccount_page_cache_page
write_cache_pageswrite_cache_pages - walk the list of dirty pages of the given address space and write all of them
__set_page_dirty_no_writebackFor address_spaces which do not use buffers nor write back.
set_page_dirtyDirty a page
__test_set_page_writeback
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.
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
invalidate_inode_pageSafely invalidate one page from its pagecache mapping.* It only drops clean, unused pages. The page must be locked.* Returns 1 if the page is successfully invalidated, otherwise 0.
invalidate_complete_page2This is like invalidate_complete_page(), except it ignores the page's* refcount
do_launder_page
__remove_mappingSame as remove_mapping, but if the page is removed from the mapping, it* gets returned with a refcount of 0.
page_check_dirty_writebackCheck if a page is dirty or under writeback
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.
put_user_pages_dirty_lockput_user_pages_dirty_lock() - release and optionally dirty gup-pinned pages*@pages: array of pages to be maybe marked dirty, and definitely released
follow_page_pte
change_pte_range
try_to_unmap_one@arg: enum ttu_flags will be passed to this argument
madvise_free_pte_range
try_to_merge_one_pagery_to_merge_one_page - take two pages and merge them into one*@vma: the vma that holds the pte pointing to page*@page: the PageAnon page that we want to replace with kpage*@kpage: the PageKsm page that we want to map instead of page,
migrate_page_move_mappingReplace the page in the mapping.* The number of remaining references must be:* 1 for anonymous pages without a mapping* 2 for pages with a mapping* 3 for pages with a mapping and PagePrivate/PagePrivate2 set.
migrate_page_statesCopy the page to its new location
fallback_migrate_pageDefault handling if a filesystem does not provide a migration function.
madvise_free_huge_pmdReturn true if we do MADV_FREE successfully on entire pmd page.* Otherwise, return false.
__split_huge_pmd_locked
mem_cgroup_move_accountmem_cgroup_move_account - move account of the page*@page: the page*@compound: charge the page as compound or small page*@from: mem_cgroup which the page is moved from.*@to: mem_cgroup which the page is moved to. @from != @to.
hwpoison_user_mappingsDo all that is necessary to remove user space mappings. Unmap* the pages and send SIGBUS to the processes if the data was dirty.
bio_check_pages_dirty
create_empty_buffersWe attach and possibly dirty the buffers atomically wrt* __set_page_dirty_buffers() via private_lock. try_to_free_buffers* is already excluded via the page lock.
attach_nobh_buffersAttach the singly-linked list of buffers created by nobh_write_begin, to* the page (converting it to circular linked list and taking care of page* dirty races).
iomap_releasepage
cancel_dirty_page