函数逻辑报告 |
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 插件可实现:逻辑报告 代码生成和批量转换代码 |