Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

Name:Allocate the request maps associated with this tag_set. Note that this* may reduce the depth asked for, if memory is tight. set->queue_depth* will be updated to reflect the allocated depth.

Proto:static int blk_mq_alloc_rq_maps(struct blk_mq_tag_set *set)

Type:int

Parameter:

TypeParameterName
struct blk_mq_tag_set *set
2937  depth = queue_depth
2938  Do
2939  err = __blk_mq_alloc_rq_maps(set)
2940  If Not err Then Break
2943  queue_depth >>= 1
2945  err = -ENOMEM
2946  Break
2948  When queue_depth cycle
2950  If Not queue_depth || err Then
2951  pr_err("blk-mq: failed to allocate request map\n")
2952  Return -ENOMEM
2955  If depth != queue_depth Then pr_info("blk-mq: reduced tag depth (%u -> %u)\n", depth, queue_depth)
2959  Return 0
Caller
NameDescribe
blk_mq_alloc_tag_setAlloc a tag set to be associated with one or more request queues.* May fail with EINVAL for various error conditions. May adjust the* requested depth down, if it's too large. In that case, the set* value will be stored in set->queue_depth.