Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:block\bfq-iosched.c Create Date:2022-07-28 17:57:51
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:bfq_get_bfqq_handle_split

Proto:static struct bfq_queue *bfq_get_bfqq_handle_split(struct bfq_data *bfqd, struct bfq_io_cq *bic, struct bio *bio, bool split, bool is_sync, bool *new_queue)

Type:struct bfq_queue

Parameter:

TypeParameterName
struct bfq_data *bfqd
struct bfq_io_cq *bic
struct bio *bio
boolsplit
boolis_sync
bool *new_queue
6012  bfqq = bic_to_bfqq(bic, is_sync)
6014  If Value is more likely to compile time(bfqq && bfqq != & fallback dummy bfqq for extreme OOM conditions ) Then Return bfqq
6017  If new_queue Then * new_queue = true
6020  If bfqq Then Task holds one reference to the queue, dropped when task exits. Each rq* in-flight on this queue also holds a reference, dropped when rq is freed.* Scheduler lock must be held here. Recall not to use bfqq after calling* this function on it.
6022  bfqq = bfq_get_queue(bfqd, bio, is_sync, bic)
6024  bic_set_bfqq(bic, bfqq, is_sync)
6025  If split && is_sync Then
6026  If * True if the queue belonged to a burst list before its merge * with another cooperating queue. && true if a large queue-activation burst is in progress || * Same purpose as the previous fields for the value of the * field keeping the queue's belonging to a large burst Then bfq_mark_bfqq_in_large_burst(bfqq)
6029  Else
6063  ime of last split = jiffies
6066  Return bfqq
Caller
NameDescribe
bfq_init_rq