Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\rmap.c Create Date:2022-07-28 14:56:44
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:page_remove_rmap - take down pte mapping from a page*@page: page to remove mapping from*@compound: uncharge the page as compound or small page* The caller needs to hold the pte lock.

Proto:void page_remove_rmap(struct page *page, bool compound)

Type:void

Parameter:

TypeParameterName
struct page *page
boolcompound
1329  If Not PageAnon(page) Then Return page_remove_file_rmap(page, compound)
1332  If compound Then Return page_remove_anon_compound_rmap(page)
1336  If Not atomic_add_negative( - 1, & * If the page can be mapped to userspace, encodes the number * of times this page is referenced by a page table.) Then Return
1344  __dec_node_page_state(page, Mapped anonymous pages )
1346  If Value for the false possibility is greater at compile time(PageMlocked(page)) Then LRU accounting for clear_page_mlock()
1349  If PageTransCompound returns true for both transparent huge pages* and hugetlbfs pages, so it should only be called when it's known* that hugetlbfs pages aren't involved. Then deferred_split_huge_page(compound_head(page))
Caller
NameDescribe
zap_pte_range
wp_page_copyHandle the case of a page which we actually need to copy to a new page.* Called with mmap_sem locked and the old page referenced, but* without the ptl held.* High level logic flow:* - Allocate a page, copy the content of the old page to the new one.
try_to_unmap_one@arg: enum ttu_flags will be passed to this argument
__unmap_hugepage_range
hugetlb_cowHugetlb_cow() should be called with page lock of the original hugepage held.* Called with hugetlb_instantiation_mutex held and pte_page locked so we* cannot race with other handlers or page migration.
replace_pageplace_page - replace page in vma by new ksm page*@vma: vma that holds the pte pointing to page*@page: the page we are replacing by kpage*@kpage: the ksm page we replace page by*@orig_pte: the original value of the pte
do_huge_pmd_wp_page_fallback
do_huge_pmd_wp_page
zap_huge_pmd
__split_huge_pmd_locked
__collapse_huge_page_copy