Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\sched\deadline.c Create Date:2022-07-28 09:40:01
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:If the entity depleted all its runtime, and if we want it to sleep* while waiting for some new execution time to become available, we* set the bandwidth replenishment timer to the replenishment instant* and try to activate it

Proto:static int start_dl_timer(struct task_struct *p)

Type:int

Parameter:

TypeParameterName
struct task_struct *p
922  dl_se = dl
923  timer = * Bandwidth enforcement timer. Each -deadline task has its * own bandwidth to be enforced, thus we need one timer per task.
924  rq = task_rq(p)
928  lockdep_assert_held( & runqueue lock: )
935  act = ns_to_ktime(dl_next_period(dl_se))
936  now = hrtimer_cb_get_time(timer)
937  delta = Convert ktime_t to nanoseconds - rq_clock(rq)
938  act = Add a ktime_t variable and a scalar nanosecond value.* res = kt + nsval:(act, delta)
945  If ktime_us_delta(act, now) < 0 Then Return 0
957  If Not hrtimer_is_queued = check, whether the timer is on one of the queues*@timer: Timer to check* Returns: True if the timer is queued, false otherwise* The function can be used lockless, but it gives only a current snapshot. Then
958  get_task_struct(p)
959  hrtimer_start - (re)start an hrtimer*@timer: the timer to be added*@tim: expiry time*@mode: timer mode: absolute (HRTIMER_MODE_ABS) or* relative (HRTIMER_MODE_REL), and pinned (HRTIMER_MODE_PINNED);* softirq based mode is considered for debug purpose only!
962  Return 1
Caller
NameDescribe
dl_check_constrained_dlDuring the activation, CBS checks if it can reuse the current task's* runtime and period
update_curr_dlUpdate the current task's runtime statistics (provided it is still* a -deadline task and has not been removed from the dl_rq).