函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:mmu_notifier_range_init

函数原型:static inline void mmu_notifier_range_init(struct mmu_notifier_range *range, enum mmu_notifier_event event, unsigned flags, struct vm_area_struct *vma, struct mm_struct *mm, unsigned long start, unsigned long end)

返回类型:void

参数:

类型参数名称
struct mmu_notifier_range *range
enum mmu_notifier_eventevent
unsignedflags
struct vm_area_struct *vma
struct mm_struct *mm
unsigned longstart
unsigned longend
503  vma等于vma
504  event等于event
505  mm等于mm
506  start等于start
507  end等于end
508  flags等于flags
调用者
名称描述
__replace_page__replace_page - replace page in vma by new page
__oom_reap_task_mm
copy_page_range
unmap_vmasmap_vmas - unmap a range of memory covered by a list of vma's*@tlb: address of the caller's struct mmu_gather*@vma: the starting vma*@start_addr: virtual address at which to start unmapping*@end_addr: virtual address at which to end unmapping
zap_page_rangezap_page_range - remove user pages in a given range*@vma: vm_area_struct holding the applicable pages*@start: starting address of pages to zap*@size: number of bytes to zap* Caller must protect the VMA list
zap_page_range_singlezap_page_range_single - remove user pages in a given range*@vma: vm_area_struct holding the applicable pages*@address: starting address of pages to zap*@size: number of bytes to zap*@details: details of shared cache invalidation
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.
__follow_pte_pmd
change_pmd_range
move_page_tables
page_mkclean_one
try_to_unmap_one@arg: enum ttu_flags will be passed to this argument
madvise_free_single_vma
copy_hugetlb_page_range
__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.
hugetlb_change_protection
write_protect_page
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
__split_huge_pmd
collapse_huge_page
wp_clean_pre_vmawp_clean_pre_vma - The pagewalk pre_vma callback.* The pre_vma callback performs the cache flush, stages the tlb flush* and calls the necessary mmu notifiers.