函数逻辑报告 |
Source Code:mm\mmap.c |
Create Date:2022-07-27 16:17:59 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:Munmap 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 <jeremy@goop.org>
函数原型:int __do_munmap(struct mm_struct *mm, unsigned long start, size_t len, struct list_head *uf, bool downgrade)
返回类型:int
参数:
类型 | 参数 | 名称 |
---|---|---|
struct mm_struct * | mm | |
unsigned long | start | |
size_t | len | |
struct list_head * | uf | |
bool | downgrade |
2731 | arch_unmap(mm, start, end) |
2735 | 如果非vma则返回:0 |
2741 | 如果Our start address within vm_mm. 大于等于end则返回:0 |
2751 | 如果start大于Our start address within vm_mm. 则 |
2759 | 如果end小于The first byte after our end addresswithin vm_mm. 且 number of VMAs 大于等于sysctl_max_map_count则返回:负ENOMEM |
2770 | 如果last且end大于Our start address within vm_mm. 则 |
2777 | 如果此条件成立可能性小(为编译器优化)(uf)则 |
2795 | 如果 Pages that have PG_mlocked set 则 |
2797 | 当tmp且Our start address within vm_mm. 小于end循环 |
2798 | 如果Flags, see mm.h. 按位与VM_LOCKED则 |
2799 | Pages that have PG_mlocked set 减等于vma_pages(tmp) |
2800 | munlock_vma_pages_all(tmp) |
2818 | 返回:如果downgrade则1否则0 |
名称 | 描述 |
---|---|
SYSCALL_DEFINE1 | |
do_munmap | |
__vm_munmap | |
SYSCALL_DEFINE5 | Expand (or shrink) an existing mapping, potentially moving it at the* same time (controlled by the MREMAP_MAYMOVE flag and available VM space)* MREMAP_FIXED option added 5-Dec-1999 by Benjamin LaHaise* This option implies MREMAP_MAYMOVE. |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |