Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\backing-dev.c Create Date:2022-07-28 14:24:37
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:wait_iff_congested - Conditionally wait for a backing_dev to become uncongested or a pgdat to complete writes*@sync: SYNC or ASYNC IO*@timeout: timeout in jiffies* In the event of a congested backing_dev (any backing_dev) this waits* for up to @timeout

Proto:long wait_iff_congested(int sync, long timeout)

Type:long

Parameter:

TypeParameterName
intsync
longtimeout
1119  start = jiffies
1120  DEFINE_WAIT(wait)
1121  wqh = congestion_wqh[sync]
1127  If atomic_read( & nr_wb_congested[sync]) == 0 Then
1128  cond_resched()
1131  ret = timeout - jiffies - start
1132  If ret < 0 Then ret = 0
1135  Go to out
1139  Note: we use "set_current_state()" _after_ the wait-queue add,* because we need a memory barrier there on SMP, so that any* wake-function that tests for the wait-queue being active* will be guaranteed to see waitqueue addition _or_ subsequent
1140  ret = This task is about to go to sleep on IO. Increment rq->nr_iowait so* that process accounting knows that this is a task in IO wait state.
1141  sh_wait - clean up after waiting in a queue*@wq_head: waitqueue waited on*@wq_entry: wait descriptor* Sets current thread back to running state and removes* the wait descriptor from the given waitqueue if still* queued.
1143  out :
1144  trace_writeback_wait_iff_congested(jiffies_to_usecs(timeout), jiffies_to_usecs(jiffies - start))
1147  Return ret
Caller
NameDescribe
shrink_node