函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\rmap.c Create Date:2022-07-27 16:25:51
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:page_move_anon_rmap - move a page to our anon_vma*@page: the page to move to our anon_vma*@vma: the vma the page belongs to* When a page belongs exclusively to one process after a COW event,* that page can be moved into the anon_vma that belongs to just

函数原型:void page_move_anon_rmap(struct page *page, struct vm_area_struct *vma)

返回类型:void

参数:

类型参数名称
struct page *page
struct vm_area_struct *vma
1023  anon_vma等于Serialized by page_table_lock
1025  page等于compound_head(page)
1027  VM_BUG_ON_PAGE(!PageLocked(page), page)
1028  VM_BUG_ON_VMA(!anon_vma, vma)
1030  anon_vma等于anon_vmaOn an anonymous page mapped into a user virtual memory area,* page->mapping points to its anon_vma, not to a struct address_space;* with the PAGE_MAPPING_ANON bit set to distinguish it
1036  WRITE_ONCE( See page-flags.h for PAGE_MAPPING_FLAGS , (structaddress_space * )anon_vma)
调用者
名称描述
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.
reuse_ksm_page
do_wp_pageThis routine handles present pages, when users try to write* to a shared page. It is done by copying the page to a new address* and decrementing the shared-page counter for the old page.* Note that this routine assumes that the protection checks have been