linux/block/blk-mq-tag.c
/*
 * If a previously inactive queue goes active, bump the active user count.
 * We need to do this before try to allocate driver tag, then even if fail
 * to get tag when first time, the other shared-tag users could reserve
 * budget for it.
 */
If a previously inactive queue goes active, bump the active user count.
We need to do this before try to allocate driver tag, then even if fail
to get tag when first time, the other shared-tag users could reserve
budget for it.
If a previously inactive queue goes active bump the active user count . We need to do this before try to allocate driver tag then even if fail to get tag when first time the other shared - tag users could reserve budget for it .
bool __blk_mq_tag_busy(struct blk_mq_hw_ctx *hctx)
{
	if (!test_bit(BLK_MQ_S_TAG_ACTIVE, &hctx->state) &&
	    !test_and_set_bit(BLK_MQ_S_TAG_ACTIVE, &hctx->state))
		atomic_inc(&hctx->tags->active_queues);
	return true;
}
bool __blk_mq_tag_busy ( struct blk_mq_hw_ctx * hctx ) { if ( ! test_bit ( BLK_MQ_S_TAG_ACTIVE , & hctx -> state ) && ! test_and_set_bit ( BLK_MQ_S_TAG_ACTIVE , & hctx -> state ) ) atomic_inc ( & hctx -> tags -> active_queues ) ; return true ; }
If a previously inactive queue goes active, bump the active user count.
If a previously inactive queue goes active bump the active user count .