函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:block\blk-timeout.c Create Date:2022-07-27 18:42:14
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:lk_add_timer - Start timeout timer for a single request*@req: request that is about to start running.* Notes:* Each request has its own timer, and as it is added to the queue, we* set up the timer. When the request completes, we cancel the timer.

函数原型:void blk_add_timer(struct request *req)

返回类型:void

参数:

类型参数名称
struct request *req
114  q等于q
121  如果非timeouttimeout等于rq_timeout
124  rq_flags与等于->timeout has been called, don't expire again 的反
126  expiry等于jiffiestimeout
127  WRITE_ONCE(deadline, expiry)
134  expiry等于blk_rq_timeout(d_jiffies_up - function to round jiffies up to a full second*@j: the time in (absolute) jiffies that should be rounded* This is the same as round_jiffies() except that it will never* round down)
136  如果非mer_pending - is a timer pending?*@timer: the timer in question* timer_pending will tell whether a given timer is currently pending,* or not. Callers must ensure serialization wrt. other operations done* to this timer, egtime_before(expiry, expires)则
138  diff等于expiresexpiry
147  如果非mer_pending - is a timer pending?*@timer: the timer in question* timer_pending will tell whether a given timer is currently pending,* or not. Callers must ensure serialization wrt. other operations done* to this timer, egdiff大于等于HZ除2则mod_timer - modify a timer's timeout*@timer: the timer to be modified*@expires: new timeout in jiffies* mod_timer() is a more efficient way to update the expire field of an* active timer (if the timer is inactive it will be activated)* mod_timer(timer,
调用者
名称描述
blk_mq_start_request
blk_mq_rq_timed_out