函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:vma_pages

函数原型:static inline unsigned long vma_pages(struct vm_area_struct *vma)

返回类型:unsigned long

参数:

类型参数名称
struct vm_area_struct *vma
2482  返回:The first byte after our end addresswithin vm_mm. Our start address within vm_mm. 右移PAGE_SHIFT determines the page size
调用者
名称描述
dup_mmap
dma_common_mmapCreate userspace mapping for the DMA-coherent memory.
dma_direct_mmap
__dma_mmap_from_coherent
vma_last_pgoff
__vm_map_pages__vm_map_pages - maps range of kernel pages into user vma*@vma: user vma to map to*@pages: pointer to array of source kernel pages*@num: number of pages in page array*@offset: user's requested vm_pgoff
unmap_mapping_range_tree
do_fault_arounddo_fault_around() tries to map few pages around the fault address. The hope* is that the pages will be needed soon and this will lower the number of* faults to handle.* It uses vm_ops->map_pages() to map the pages, which skips the page if it's
can_vma_merge_afterReturn true if we can merge this (vm_flags,anon_vma,file,vm_pgoff)* beyond (at a higher virtual address and file offset than) the vma.* We cannot merge two vmas if they have differently assigned (non-NULL)
remove_vma_listOk - we have the memory areas we should free on the vma list,* so release them, and do the vma updates.* Called with the mm semaphore held.
__do_munmapMunmap is split into 2 main parts -- this part which finds* what needs doing, and the areas themselves, which do the* work. This now handles partial unmappings.* Jeremy Fitzhardinge
exit_mmapRelease all mmaps.
insert_vm_structInsert vm structure into process list sorted by address* and into the inode's i_mmap tree. If vm_file is non-NULL* then i_mmap_rwsem is taken here.
walk_page_mappingwalk_page_mapping - walk all memory areas mapped into a struct address_space
mpol_set_shared_policy
get_arg_page