函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:This function just creates a new policy, does some check and simple* initialization. You must invoke mpol_set_nodemask() to set nodes.

函数原型:static struct mempolicy *mpol_new(unsigned short mode, unsigned short flags, nodemask_t *nodes)

返回类型:struct mempolicy

参数:

类型参数名称
unsigned shortmode
unsigned shortflags
nodemask_t *nodes
247  pr_debug("setting mode %d flags %d nodes[0] %lx\n", mode, flags, nodes ? nodes_addr( * nodes)[0] : NUMA_NO_NODE)
250  如果mode恒等于MPOL_DEFAULT
251  如果nodes且非nodes_empty( * nodes)则返回:错误号
253  返回:NULL
255  VM_BUG_ON(!nodes)
262  如果mode恒等于MPOL_PREFERRED
263  如果nodes_empty( * nodes)则
264  如果flags按位与Flags for set_mempolicy flags按位与MPOL_F_RELATIVE_NODES则返回:错误号
268  否则如果mode恒等于MPOL_LOCAL
269  如果非nodes_empty( * nodes)或flags按位与Flags for set_mempolicy flags按位与MPOL_F_RELATIVE_NODES则返回:错误号
273  mode等于MPOL_PREFERRED
274  否则如果nodes_empty( * nodes)则返回:错误号
276  policy等于分配高速缓存区
277  如果非policy则返回:错误号
279  atomic_set( & refcnt, 1)
280  See MPOL_* above 等于mode
281  See set_mempolicy() MPOL_F_* above 等于flags
283  返回:policy
调用者
名称描述
do_set_mempolicySet the process memory policy
do_mbind
mpol_shared_policy_initmpol_shared_policy_init - initialize shared policy for inode*@sp: pointer to inode shared policy*@mpol: struct mempolicy to install* Install non-NULL @mpol in inode's shared policy rb-tree.* On entry, the current task has a reference on a non-NULL @mpol.