函数逻辑报告 |
Source Code:mm\mmap.c |
Create Date:2022-07-27 16:15:27 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:find_vma_links
函数原型:static int find_vma_links(struct mm_struct *mm, unsigned long addr, unsigned long end, struct vm_area_struct **pprev, struct rb_node ***rb_link, struct rb_node **rb_parent)
返回类型:int
参数:
类型 | 参数 | 名称 |
---|---|---|
struct mm_struct * | mm | |
unsigned long | addr | |
unsigned long | end | |
struct vm_area_struct ** | pprev | |
struct rb_node *** | rb_link | |
struct rb_node ** | rb_parent |
533 | rb_prev = __rb_parent = NULL |
538 | __rb_parent等于__rb_link |
539 | vma_tmp等于rb_entry(__rb_parent, structvm_area_struct, vm_rb) |
543 | 如果Our start address within vm_mm. 小于end则返回:负ENOMEM |
546 | 否则 |
547 | rb_prev等于__rb_parent |
552 | * pprev = NULL |
556 | rb_parent等于__rb_parent |
557 | 返回:0 |
名称 | 描述 |
---|---|
__insert_vm_struct | Helper for vma_adjust() in the split_vma insert case: insert a vma into the* mm's list and rbtree. It has already been inserted into the interval tree. |
mmap_region | |
do_brk_flags | his is really a simplified "do_mmap". it only handles* anonymous maps. eventually we may be able to do some* brk-specific accounting here. |
insert_vm_struct | Insert 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. |
copy_vma | Copy the vma structure to a new location in the same mm,* prior to moving page table entries, to effect an mremap move. |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |