函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:lb_gather_mmu - initialize an mmu_gather structure for page-table tear-down*@tlb: the mmu_gather structure to initialize*@mm: the mm_struct of the target address space*@start: start of the region that will be removed from the page-table*@end: end of the

函数原型:void tlb_gather_mmu(struct mmu_gather *tlb, struct mm_struct *mm, unsigned long start, unsigned long end)

返回类型:void

参数:

类型参数名称
struct mmu_gather *tlb
struct mm_struct *mm
unsigned longstart
unsigned longend
209  mm等于mm
212  we are in the middle of an operation to clear* a full mm and can make some optimizations等于非start按位或end加1的值
215  we have performed an operation which* requires a complete flush of the tlb等于0
216  next = NULL
217  nr等于0
218  max等于ARRAY_SIZE - get the number of elements in array @arr*@arr: array to be sized(__pages)
219  active等于local
220  batch_count等于0
230  __tlb_reset_range(tlb)
231  inc_tlb_flush_pending(mm)
调用者
名称描述
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
unmap_region
exit_mmapRelease all mmaps.
madvise_cold
madvise_pageout
madvise_free_single_vma
unmap_hugepage_range
__oom_reap_task_mm
shift_arg_pagesDuring bprm_mm_init(), we create a temporary stack at STACK_TOP_MAX. Once* the binfmt code determines where the new stack should reside, we shift it to* its final location. The process proceeds as follows:* 1) Use shift to calculate the new vma endpoints.