函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\mempolicy.c Create Date:2022-07-27 17:05:44
Last Modify:2020-03-17 22:28:11 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:COMPAT_SYSCALL_DEFINE4

函数原型:COMPAT_SYSCALL_DEFINE4(migrate_pages, compat_pid_t, pid, compat_ulong_t, maxnode, const compat_ulong_t __user *, old_nodes, const compat_ulong_t __user *, new_nodes)

返回类型:

参数:

1687  unsigned long __user * old = NULL
1688  unsigned long __user * new = NULL
1693  nr_bits等于min_t - return minimum of two values, using the specified type*@type: data type to use*@x: first value*@y: second value(unsignedlong, maxnode - 1, MAX_NUMNODES)
1694  size等于@a is a power of 2 value (nr_bits, BITS_PER_LONG)除8
1695  如果old_nodes
1696  如果compat_get_bitmap(nodes_addr(tmp_mask), old_nodes, nr_bits)则返回:负EFAULT
1698  old等于Allocate user-space memory for the duration of a single system call,* in order to marshall parameters inside a compat thunk.
1699  如果new_nodesnew等于oldsizesizeof(unsignedlong)
1701  如果copy_to_user(old, nodes_addr(tmp_mask), size)则返回:负EFAULT
1704  如果new_nodes
1705  如果compat_get_bitmap(nodes_addr(tmp_mask), new_nodes, nr_bits)则返回:负EFAULT
1707  如果(new == NULL)则new等于Allocate user-space memory for the duration of a single system call,* in order to marshall parameters inside a compat thunk.
1709  如果copy_to_user(new, nodes_addr(tmp_mask), size)则返回:负EFAULT
1712  返回:kernel_migrate_pages(pid, nr_bits + 1, old, new)