函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:The timer is locked, fire it and arrange for its reload.

函数原型:static void cpu_timer_fire(struct k_itimer *timer)

返回类型:void

参数:

类型参数名称
struct k_itimer *timer
523  ctmr等于cpu
525  如果it_sigev_notify按位与deliver to thread 的反的值恒等于her notification: meaningless
529  cpu_timer_setexpires(ctmr, 0)
530  否则如果此条件成立可能性小(为编译器优化)(sigq == NULL)则
535  唤醒中断线程
536  cpu_timer_setexpires(ctmr, 0)
537  否则如果非it_interval
541  posix_timer_event(timer, 0)
542  cpu_timer_setexpires(ctmr, 0)
543  否则如果posix_timer_event(timer, ++it_requeue_pending)则
550  posix_cpu_timer_rearm(timer)
551  it_requeue_pending先自加
调用者
名称描述
posix_cpu_timer_setGuts of sys_timer_settime for CPU timers.* This is called with the timer locked and interrupts disabled.* If we return TIMER_RETRY, it's necessary to release the timer's lock* and try again. (This happens when the timer is in the middle of firing.)
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.