函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\time\posix-cpu-timers.c Create Date:2022-07-27 11:47:53
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:Check for any per-thread CPU timers that have fired and move them off* the tsk->cpu_timers[N] list onto the firing list. Here we update the

函数原型:static void check_thread_timers(struct task_struct *tsk, struct list_head *firing)

返回类型:void

参数:

类型参数名称
struct task_struct *tsk>it_*_expires values to reflect the remaining thread CPU timers.
struct list_head *firing
829  pct等于 Empty if CONFIG_POSIX_CPUTIMERS=n
833  如果dl_task(>it_*_expires values to reflect the remaining thread CPU timers.)则check_dl_overrun(>it_*_expires values to reflect the remaining thread CPU timers.)
836  如果Check whether all cache entries contain U64_MAX, i.e. eternal expiry time 则返回
839  task_sample_cputime(>it_*_expires values to reflect the remaining thread CPU timers., samples)
840  collect_posix_cputimers(pct, samples, firing)
845  soft等于task_rlimit(>it_*_expires values to reflect the remaining thread CPU timers., RLIMIT_RTTIME)
846  如果soft不等于RLIM_INFINITY
848  rttime等于timeoutUSEC_PER_SECHZ
849  hard等于task_rlimit_max(>it_*_expires values to reflect the remaining thread CPU timers., RLIMIT_RTTIME)
852  如果hard不等于RLIM_INFINITYcheck_rlimit(rttime, hard, SIGKILL, true, true)则返回
857  如果check_rlimit(rttime, soft, SIGXCPU, true, false)则
858  soft加等于USEC_PER_SEC
859  rlim_cur等于soft
863  如果Check whether all cache entries contain U64_MAX, i.e. eternal expiry time tick_dep_clear_task(>it_*_expires values to reflect the remaining thread CPU timers., TICK_DEP_BIT_POSIX_TIMER)
调用者
名称描述
run_posix_cpu_timersThis is called from the timer interrupt handler. The irq handler has* already updated our counts. We need to check if any timers fire now.* Interrupts are disabled.