Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

Name:Handle either a requeue or a finish for rq. The things to do are* the same in both cases: all references to rq are to be dropped. In* particular, rq is considered completed from the point of view of* the scheduler.

Proto:static void bfq_finish_requeue_request(struct request *rq)

Type:void

Parameter:

TypeParameterName
struct request *rq
5896  bfqq = RQ_BFQQ(rq)
5908  If Value for the false possibility is greater at compile time(!(rq_flags & levator private data attached )) Then Return
5916  If Not icq || Not bfqq Then Return
5919  bfqd = parent bfq_data
5921  If rq_flags & drive already may have started this one Then bfqg_stats_update_completion(bfqq_group(bfqq), Time that this request was allocated for this IO. , Time that I/O was submitted to the device. , op and common flags )
5927  If Value is more likely to compile time(rq_flags & drive already may have started this one ) Then
5930  spin_lock_irqsave( & lock, flags)
5932  If rq == * If set, then bfq_update_inject_limit() is invoked when * waited_rq is eventually completed. Then The processes associated with bfqq may happen to generate their* cumulative I/O at a lower rate than the rate at which the device* could serve the same I/O. This is rather probable, e.g., if only
5935  bfq_completed_request(bfqq, bfqd)
5936  bfq_finish_requeue_request_body(bfqq)
5938  spin_unlock_irqrestore( & lock, flags)
5939  Else
5958  bfq_finish_requeue_request_body(bfqq)
5978  priv[0] = NULL
5979  priv[1] = NULL