Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\interval_tree.c Create Date:2022-07-28 14:31:38
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:vma_interval_tree_insert

Proto:void vma_interval_tree_insert(struct vm_area_struct *node, struct rb_root_cached *root)

Type:void

Parameter:

TypeParameterName
struct vm_area_struct *node
struct rb_root_cached *root
25  struct rb_node * * link = & rb_node, * rb_parent = NULL
25  start = vma_start_pgoff(node) , last = vma_last_pgoff(node)
25  bool leftmost = true
25  When link cycle
25  rb_parent = link
25  parent = ({
25  __mptr = rb_parent
25  Do
25  When 0 cycle
25  })
25  If rb_subtree_last < last Then rb_subtree_last = last
25  If start < vma_start_pgoff(parent) Then link = rb_left
25  Else
25  link = rb_right
25  leftmost = false
25  rb_subtree_last = last
25  rb_link_node( & rb, rb_parent, link)
25  rb_insert_augmented_cached( & rb, root, leftmost, & vma_interval_tree_augment)
Caller
NameDescribe
add_vma_to_mmadd a VMA into a process's mm_struct in the appropriate place in the list* and tree and add to the address space's page tree also if not an anonymous* page* - should be called with mm->mmap_sem held writelocked
__vma_link_file
__vma_adjustWe cannot adjust vm_start, vm_end, vm_pgoff fields of a vma that* is already present in an i_mmap tree without adjusting the tree.* The following helper function should be used when such adjustments* are necessary