| 函数逻辑报告 | 
| Source Code: fs\io_uring.c | Create Date:2022-07-29 10:54:29 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| 首页 | 函数Tree | 
| 注解内核,赢得工具 | 下载SCCT | English | 
函数名称:io_ring_ctx_alloc
函数原型:static struct io_ring_ctx *io_ring_ctx_alloc(struct io_uring_params *p)
返回类型:struct io_ring_ctx
参数:
| 类型 | 参数 | 名称 | 
|---|---|---|
| struct io_uring_params * | p | 
| 506 | 如果非ctx则返回:NULL | 
| 509 | if all else fails... 等于分配高速缓存区 | 
| 510 | 如果非 if all else fails... 则转到:err | 
| 522 | hash_bits减等于5 | 
| 526 | cancel_hash等于开辟内存 | 
| 528 | 如果非cancel_hash则转到:err | 
| 530 | __hash_init(cancel_hash, 1U << hash_bits) | 
| 537 | init_waitqueue_head( & cq_wait) | 
| 538 | 初始化链表头 | 
| 541 | mutex_init - initialize the mutex*@mutex: the mutex to be initialized* Initialize the mutex to unlocked state.* It is not allowed to initialize an already locked mutex.( & uring_lock) | 
| 542 | init_waitqueue_head( & wait) | 
| 543 | spin_lock_init( & completion_lock) | 
| 544 | 初始化链表头 | 
| 545 | 初始化链表头 | 
| 546 | 初始化链表头 | 
| 547 | init_waitqueue_head( & inflight_wait) | 
| 548 | spin_lock_init( & inflight_lock) | 
| 549 | 初始化链表头 | 
| 550 | 返回:ctx | 
| 551 | err : | 
| 554 | 释放内存 | 
| 555 | 释放内存 | 
| 556 | 释放内存 | 
| 557 | 返回:NULL | 
| 名称 | 描述 | 
|---|---|
| io_uring_create | 
| 源代码转换工具 开放的插件接口 | X | 
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |