Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\nommu.c Create Date:2022-07-28 14:36:51
Last Modify:2020-03-17 21:26:27 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:delete a VMA from its owning mm_struct and address space

Proto:static void delete_vma_from_mm(struct vm_area_struct *vma)

Type:void

Parameter:

TypeParameterName
struct vm_area_struct *vma
661  mm = The address space we belong to.
662  curr = current process
664  number of VMAs --
665  When i < VMACACHE_SIZE cycle
667  If vmas[i] == vma Then
669  Break
674  If File we map to (can be NULL). Then
675  mapping = f_mapping
677  i_mmap_lock_write(mapping)
678  flush_dcache_mmap_lock(mapping)
679  vma_interval_tree_remove(vma, & i_mmap)
680  flush_dcache_mmap_unlock(mapping)
681  i_mmap_unlock_write(mapping)
685  rb_erase( & vm_rb, & mm_rb)
687  __vma_unlink_list(mm, vma)
Caller
NameDescribe
split_vmasplit a vma into two pieces at address 'addr', a new vma is allocated either* for the first part or the tail.
shrink_vmashrink a VMA by removing the specified chunk from either the beginning or* the end
do_munmaplease a mapping* - under NOMMU conditions the chunk to be unmapped must be backed by a single* VMA, though it need not cover the whole VMA
exit_mmaplease all the mappings made in a process's VM space