函数逻辑报告 |
Source Code:mm\msync.c |
Create Date:2022-07-27 16:22:57 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:MS_SYNC syncs the entire file - including mappings
函数原型:SYSCALL_DEFINE3(msync, unsigned long, start, size_t, len, int, flags)
返回类型:
参数:无
37 | unmapped_error等于0 |
42 | 如果flags按位与sync memory asynchronously 按位或validate the caches 按位或synchronous memory sync 的值的反则转到:out |
44 | 如果offset_in_page(start)则转到:out |
46 | 如果flags按位与sync memory asynchronously 且flags按位与synchronous memory sync 则转到:out |
53 | error等于0 |
62 | 循环 |
68 | 如果非vma则转到:out_unlock |
71 | 如果start小于Our start address within vm_mm. 则 |
73 | 如果start大于等于end则转到:out_unlock |
75 | unmapped_error等于负ENOMEM |
78 | 如果flags按位与validate the caches 且Flags, see mm.h. 按位与VM_LOCKED则 |
81 | 转到:out_unlock |
84 | fstart等于start减Our start address within vm_mm. 加Offset (within vm_file) in PAGE_SIZEunits 左移PAGE_SHIFT determines the page size 位的值 |
88 | 如果flags按位与synchronous memory sync 且file且Flags, see mm.h. 按位与VM_SHARED则 |
92 | error等于vfs_fsync_range(file, fstart, fend, 1) |
98 | 否则 |
100 | error等于0 |
101 | 转到:out_unlock |
106 | out_unlock : |
108 | out : |
109 | 返回:如果error否则unmapped_error |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |