函数逻辑报告 |
Source Code:mm\migrate.c |
Create Date:2022-07-27 17:33:53 |
| Last Modify:2022-05-20 09:53:13 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:Move a list of pages in the address space of the currently executing* process.
函数原型:static int kernel_move_pages(pid_t pid, unsigned long nr_pages, const void __user *__user *pages, const int __user *nodes, int __user *status, int flags)
返回类型:int
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| pid_t | pid | |
| unsigned long | nr_pages | |
| const void __user *__user * | pages | |
| const int __user * | nodes | |
| int __user * | status | |
| int | flags |
| 1793 | 如果flags按位与Move pages owned by this process to conformto policy 按位或Move every page to conform to policy 的值的反则返回:负EINVAL |
| 1796 | 如果flags按位与Move every page to conform to policy 且非操作权限检查则返回:负EPERM |
| 1801 | task等于如果pid则find_task_by_vpid(pid)否则当前进程 |
| 1802 | 如果非task则 |
| 1804 | 返回:负ESRCH |
| 1806 | get_task_struct(task) |
| 1812 | 如果非ptrace_may_access(task, PTRACE_MODE_READ_REALCREDS)则 |
| 1815 | 转到:out |
| 1819 | err等于security_task_movememory(task) |
| 1825 | put_task_struct(task) |
| 1830 | 如果nodes则err等于Migrate an array of page address onto an array of nodes and fill* the corresponding array of status. |
| 1837 | 返回:err |
| 1839 | out : |
| 1840 | put_task_struct(task) |
| 1841 | 返回:err |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |