函数逻辑报告 |
Source Code:mm\mmap.c |
Create Date:2022-07-27 16:17:14 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:Get an address range which is currently unmapped.* For shmat() with addr=0.* Ugly calling convention alert:* Return value with the low bits set means error value,* ie* if (ret & ~PAGE_MASK)* error = ret;
函数原型:unsigned long arch_get_unmapped_area(struct file *filp, unsigned long addr, unsigned long len, unsigned long pgoff, unsigned long flags)
返回类型:unsigned long
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct file * | filp | |
| unsigned long | addr | |
| unsigned long | len | |
| unsigned long | pgoff | |
| unsigned long | flags |
| 2085 | mmap_end等于arch_get_mmap_end(addr) |
| 2087 | 如果len大于mmap_end减mmap_min_addr则返回:负ENOMEM |
| 2090 | 如果flags按位与Interpret addr exactly 则返回:addr |
| 2093 | 如果addr则 |
| 2096 | 如果mmap_end减len大于等于addr且addr大于等于mmap_min_addr且非vma或addr加len小于等于vm_start_gap(vma)的值且非prev或addr大于等于vm_end_gap(prev)的值则返回:addr |
| 2102 | flags等于0 |
| 2104 | low_limit等于 base of mmap area |
| 2105 | high_limit等于mmap_end |
| 2106 | align_mask等于0 |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |