函数逻辑报告 |
Source Code:lib\percpu-refcount.c |
Create Date:2022-07-27 07:22:00 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:percpu_ref_init - initialize a percpu refcount*@ref: percpu_ref to initialize*@release: function which will be called when refcount hits 0*@flags: PERCPU_REF_INIT_* flags*@gfp: allocation mask to use* Initializes @ref
函数原型:int percpu_ref_init(struct percpu_ref *ref, percpu_ref_func_t *release, unsigned int flags, gfp_t gfp)
返回类型:int
参数:
类型 | 参数 | 名称 |
---|---|---|
struct percpu_ref * | ref | |
percpu_ref_func_t * | release | |
unsigned int | flags | |
gfp_t | gfp |
63 | align等于max_t - return maximum of two values, using the specified type*@type: data type to use*@x: first value*@y: second value(size_t, 1 << __PERCPU_REF_FLAG_BITS, __alignof__(unsignedlong)) |
65 | start_count等于0 |
67 | * The low bit of the pointer indicates whether the ref is in percpu * mode; if set, then get/put will manipulate the atomic_t.等于__alloc_percpu_gfp(sizeof(unsignedlong), align, gfp) |
69 | 如果非* The low bit of the pointer indicates whether the ref is in percpu * mode; if set, then get/put will manipulate the atomic_t.则返回:负ENOMEM |
75 | 如果flags按位与PERCPU_REF_INIT_ATOMIC按位或PERCPU_REF_INIT_DEAD的值则 |
76 | * The low bit of the pointer indicates whether the ref is in percpu * mode; if set, then get/put will manipulate the atomic_t.或等于__PERCPU_REF_ATOMIC |
77 | allow_reinit = true |
78 | 否则 |
82 | 如果flags按位与PERCPU_REF_INIT_DEAD则* The low bit of the pointer indicates whether the ref is in percpu * mode; if set, then get/put will manipulate the atomic_t.或等于__PERCPU_REF_DEAD |
84 | 否则start_count自加 |
87 | atomic_long_set( & count, start_count) |
90 | confirm_switch = NULL |
91 | 返回:0 |
名称 | 描述 |
---|---|
css_create | |
cgroup_create | The returned cgroup is fully initialized including its control mask, but* it isn't associated with its kernfs_node and doesn't have the control* mask applied. |
cgroup_bpf_inherit | group_bpf_inherit() - inherit effective programs from parent*@cgrp: the cgroup to modify |
blkg_alloc | lkg_alloc - allocate a blkg*@blkcg: block cgroup the new blkg is associated with*@q: request_queue the new blkg is associated with*@gfp_mask: allocation mask to use* Allocate a new blkg assocating @blkcg and @q. |
ioctx_alloc | x_alloc* Allocates and initializes an ioctx. Returns an ERR_PTR if it failed. |
io_ring_ctx_alloc | |
cgroup_setup_root | |
hd_ref_init | |
blk_alloc_queue_node | lk_alloc_queue_node - allocate a request queue*@gfp_mask: memory allocation flags*@node_id: NUMA node to allocate memory from |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |