函数逻辑报告 |
Source Code:block\bio.c |
Create Date:2022-07-27 18:31:48 |
Last Modify:2020-03-17 23:13:58 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:set_init - Initialize a bio_set*@bs: pool to initialize*@pool_size: Number of bio and bio_vecs to cache in the mempool*@front_pad: Number of bytes to allocate in front of the returned bio*@flags: Flags to modify behavior, currently %BIOSET_NEED_BVECS* and
函数原型:int bioset_init(struct bio_set *bs, unsigned int pool_size, unsigned int front_pad, int flags)
返回类型:int
参数:
类型 | 参数 | 名称 |
---|---|---|
struct bio_set * | bs | |
unsigned int | pool_size | |
unsigned int | front_pad | |
int | flags |
2000 | back_pad等于Test patch to inline a certain number of bi_io_vec's inside the bio* itself, to shrink a bio data allocation from two mempool calls to one乘sizeof(structbio_vec) |
2004 | spin_lock_init( & * Deadlock avoidance for stacking block drivers: see comments in * bio_alloc_bioset() for details) |
2005 | bio_list_init( & rescue_list) |
2006 | INIT_WORK( & rescue_work, bio_alloc_rescue) |
2008 | bio_slab等于bio_find_or_create_slab(front_pad + back_pad) |
2012 | 如果mempool_init_slab_pool( & bio_pool, pool_size, bio_slab)则转到:bad |
2015 | 如果flags按位与BIOSET_NEED_BVECS且reate memory pools for biovec's in a bio_set.* use the global biovec slabs created for general use.则转到:bad |
2019 | 如果非flags按位与BIOSET_NEED_RESCUER的值则返回:0 |
2022 | rescue_workqueue等于alloc_workqueue("bioset", WQ_MEM_RECLAIM, 0) |
2023 | 如果非rescue_workqueue则转到:bad |
2026 | 返回:0 |
2027 | bad : |
2029 | 返回:负ENOMEM |
名称 | 描述 |
---|---|
bioset_init_from_src | Initialize and setup a new bio_set, based on the settings from* another bio_set. |
init_bio | |
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 |
init_bounce_bioset | |
iomap_init |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |