函数逻辑报告 |
Source Code:block\blk-mq.c |
Create Date:2022-07-27 18:44:05 |
| Last Modify:2020-03-17 23:18:05 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:blk_mq_alloc_request_hctx
函数原型:struct request *blk_mq_alloc_request_hctx(struct request_queue *q, unsigned int op, blk_mq_req_flags_t flags, unsigned int hctx_idx)
返回类型:struct request
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct request_queue * | q | |
| unsigned int | op | |
| blk_mq_req_flags_t | flags | |
| unsigned int | hctx_idx |
| 427 | struct blk_mq_alloc_data alloc_data = {flags = flags, cmd_flags = op} |
| 438 | 如果WARN_ON_ONCE(!(flags & BLK_MQ_REQ_NOWAIT))则返回:错误号 |
| 441 | 如果hctx_idx大于等于nr_hw_queues则返回:错误号 |
| 444 | ret等于lk_queue_enter() - try to increase q->q_usage_counter*@q: request queue pointer*@flags: BLK_MQ_REQ_NOWAIT and/or BLK_MQ_REQ_PREEMPT |
| 452 | hctx等于 hw dispatch queues [hctx_idx] |
| 453 | 如果非blk_mq_hw_queue_mapped(hctx)则 |
| 454 | blk_queue_exit(q) |
| 455 | 返回:错误号 |
| 458 | input & output parameter 等于__blk_mq_get_ctx(q, cpu) |
| 460 | rq等于blk_mq_get_request(q, NULL, & alloc_data) |
| 461 | blk_queue_exit(q) |
| 466 | 返回:rq |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |