函数逻辑报告 |
Source Code:fs\userfaultfd.c |
Create Date:2022-07-29 10:52:42 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:serland asks for a certain API version and we return which bits* and ioctl commands are implemented in this kernel for such API* version or -EINVAL if unknown.
函数原型:static int userfaultfd_api(struct userfaultfd_ctx *ctx, unsigned long arg)
返回类型:int
参数:
类型 | 参数 | 名称 |
---|---|---|
struct userfaultfd_ctx * | ctx | |
unsigned long | arg |
1832 | 如果state machine 不等于UFFD_STATE_WAIT_API则转到:out |
1835 | 如果copy_from_user( & uffdio_api, buf, uffdio_api的长度)则转到:out |
1842 | 如果features按位与UFFD_FEATURE_EVENT_FORK且非操作权限检查则转到:err_out |
1845 | features等于UFFD_API_FEATURES |
1846 | ioctls等于UFFD_API_IOCTLS |
1848 | 如果copy_to_user(buf, & uffdio_api, uffdio_api的长度)则转到:out |
1850 | state machine 等于UFFD_STATE_RUNNING |
1853 | ret等于0 |
1854 | out : |
1855 | 返回:ret |
1856 | err_out : |
1857 | memset( & uffdio_api, 0, uffdio_api的长度) |
1858 | 如果copy_to_user(buf, & uffdio_api, uffdio_api的长度)则ret等于负EFAULT |
1860 | 转到:out |
名称 | 描述 |
---|---|
userfaultfd_ioctl |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |