| Function report | 
| Source Code: kernel\time\posix-cpu-timers.c | Create Date:2022-07-28 10:48:03 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:Check for any per-thread CPU timers that have fired and move them* off the tsk->*_timers list onto the firing list. Per-thread timers* have already been taken off.
Proto:static void check_process_timers(struct task_struct *tsk, struct list_head *firing)
Type:void
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| struct task_struct * | tsk | |
| struct list_head * | firing | 
| 906 | sig = Signal handlers: | 
| 916 | If Not READ_ONCE(timers_active) || expiry_active Then Return | 
| 923 | expiry_active = true | 
| 930 | collect_posix_cputimers(pct, samples, firing) | 
| 935 | check_cpu_itimer(tsk, & it[CPUCLOCK_PROF], & nextevt, samples[CPUCLOCK_PROF], SIGPROF) | 
| 938 | check_cpu_itimer(tsk, & it[CPUCLOCK_VIRT], & nextevt, samples[CPUCLOCK_VIRT], SIGVTALRM) | 
| 942 | soft = task_rlimit(tsk, RLIMIT_CPU) | 
| 943 | If soft != RLIM_INFINITY Then | 
| 945 | hard = task_rlimit_max(tsk, RLIMIT_CPU) | 
| 946 | ptime = samples[CPUCLOCK_PROF] | 
| 947 | softns = soft * NSEC_PER_SEC | 
| 948 | hardns = hard * NSEC_PER_SEC | 
| 951 | If hard != RLIM_INFINITY && check_rlimit(ptime, hardns, SIGKILL, TSC's on different sockets may be reset asynchronously.* This may cause the TSC ADJUST value on socket 0 to be NOT 0., true) Then Return | 
| 958 | softns += NSEC_PER_SEC | 
| 966 | If Check whether all cache entries contain U64_MAX, i.e. eternal expiry time Then stop_process_timers(sig) | 
| 969 | expiry_active = false | 
| Name | Describe | 
|---|---|
| run_posix_cpu_timers | This 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. | 
| Source code conversion tool public plug-in interface | X | 
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |