函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:block\blk-mq.c Create Date:2022-07-27 18:45:13
Last Modify:2020-03-17 23:18:05 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:blk_mq_run_hw_queue

函数原型:void blk_mq_run_hw_queue(struct blk_mq_hw_ctx *hctx, bool async)

返回类型:void

参数:

类型参数名称
struct blk_mq_hw_ctx *hctx
boolasync
1467  hctx_lock(hctx, & srcu_idx)
1468  need_run等于非blk_queue_quiesced(@queue: Pointer to the request queue that owns this hardware context.)且Check if any of the ctx, dispatch list or elevator* have pending work in this hardware queue.
1470  hctx_unlock(hctx, srcu_idx)
1472  如果need_run__blk_mq_delay_run_hw_queue(hctx, async, 0)
调用者
名称描述
blk_mq_dispatch_wake
blk_mq_dispatch_rq_listReturns true if we did some work AND can potentially do more.
blk_mq_run_hw_queues
blk_mq_start_hw_queue
blk_mq_start_stopped_hw_queue
blk_mq_request_bypass_insertShould only be used carefully, when the caller knows we want to* bypass a potential IO scheduler on the target device.
blk_mq_make_request
blk_mq_hctx_notify_dead'cpu' is going away. splice any existing rq_list entries from this* software queue to the hw queue dispatch list, and ensure that it* gets run.
blk_mq_get_tag
blk_mq_sched_restart
blk_mq_sched_insert_request
blk_mq_sched_insert_requests
kyber_domain_wake