函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:unlink_anon_vmas

函数原型:void unlink_anon_vmas(struct vm_area_struct *vma)

返回类型:void

参数:

类型参数名称
struct vm_area_struct *vma
399  struct anon_vma * root = NULL
406  anon_vma等于anon_vma
408  root等于This is a useful helper function for locking the anon_vma root as* we traverse the vma->anon_vma_chain, looping over anon_vma's that* have the same vma.* Such anon_vma's should have the same root, so you'd expect to see
409  anon_vma_interval_tree_remove(avc, & Interval tree of private "related" vmas )
415  如果RB_EMPTY_ROOT( & rb_root)则
416  Count of child anon_vmas and VMAs which points to this anon_vma.* This counter is used for making decision about reusing anon_vma* instead of forking new one. See comments in function anon_vma_clone.自减
417  继续下一循环
420  删除链表项
421  anon_vma_chain_free(avc)
423  如果Serialized by page_table_lock degree自减
425  unlock_anon_vma_root(root)
433  anon_vma等于anon_vma
435  VM_WARN_ON(Count of child anon_vmas and VMAs which points to this anon_vma.* This counter is used for making decision about reusing anon_vma* instead of forking new one. See comments in function anon_vma_clone.)
436  put_anon_vma(anon_vma)
438  删除链表项
439  anon_vma_chain_free(avc)
调用者
名称描述
free_pgtables
__split_vma__split_vma() bypasses sysctl_max_map_count checking. We use this where it* has already been checked or doesn't make sense to fail.
anon_vma_cloneAttach the anon_vmas from src to dst
anon_vma_forkAttach vma to its own anon_vma, as well as to the anon_vmas that* the corresponding VMA in the parent process is attached to.* Returns 0 on success, non-zero on failure.
anon_vma_merge