Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:include\linux\rmap.h Create Date:2022-07-28 08:55:40
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:anon_vma_prepare

Proto:static inline int anon_vma_prepare(struct vm_area_struct *vma)

Type:int

Parameter:

TypeParameterName
struct vm_area_struct *vma
150  If Value is more likely to compile time(Serialized by page_table_lock ) Then Return 0
153  Return __anon_vma_prepare - attach an anon_vma to a memory region*@vma: the memory region in question* This makes sure the memory mapping described by 'vma' has* an 'anon_vma' attached to it, so that we can associate the
Caller
NameDescribe
dup_mmap
uprobe_write_opcodeNOTE:* Expect the breakpoint instruction to be the smallest size instruction for* the architecture
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.
do_anonymous_pageWe enter with non-exclusive mmap_sem (to exclude vma changes,* but allow concurrent faults), and pte mapped but not yet locked.* We return with mmap_sem still held, but pte unmapped and unlocked.
do_cow_fault
expand_downwardsvma is the first one with address < vma->vm_start. Have to extend 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.
hugetlb_no_page
do_huge_pmd_anonymous_page
__mcopy_atomic_hugetlb__mcopy_atomic processing for HUGETLB vmas. Note that this routine is* called with mmap_sem held, it will release mmap_sem before returning.
__mcopy_atomic