Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:block\blk-mq.c Create Date:2022-07-28 17:09:28
Last Modify:2020-03-17 23:18:05 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:blk_mq_get_driver_tag

Proto:bool blk_mq_get_driver_tag(struct request *rq)

Type:bool

Parameter:

TypeParameterName
struct request *rq
1024  struct blk_mq_alloc_data data = { input parameter = q, hctx = mq_hctx, flags = BLK_MQ_REQ_NOWAIT, cmd_flags = op and common flags , }
1032  If tag != -1 Then Return true
1035  If blk_mq_tag_is_reserved(@sched_tags: Tags owned by I/O scheduler. If there is an I/O* scheduler associated with a request queue, a tag is assigned when* that request is allocated. Else, this member is not used., internal_tag) Then flags |= BLK_MQ_REQ_RESERVED
1038  shared = blk_mq_tag_busy(hctx)
1039  tag = blk_mq_get_tag( & data)
1040  If tag >= 0 Then
1041  If shared Then
1045  rqs[tag] = rq
1048  Return tag != -1
Caller
NameDescribe
blk_mq_mark_tag_waitMark us waiting for a tag. For shared tags, this involves hooking us into* the tag wakeups. For non-shared tags, we can simply mark us needing a* restart. For both cases, take care to check the condition again after* marking us as waiting.
blk_mq_dispatch_rq_listReturns true if we did some work AND can potentially do more.
__blk_mq_try_issue_directly