Function report |
Source Code:kernel\time\timer.c |
Create Date:2022-07-28 10:39:44 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:We are using hashed locking: Holding per_cpu(timer_bases[x]).lock means* that all timers which are tied to this base are locked, and the base itself* is locked too.* So __run_timers/migrate_timers can safely modify all timers which could
Proto:static struct timer_base *lock_timer_base(struct timer_list *timer, unsigned long *flags)__acquires(timer->base->lock)
Type:struct timer_base
Parameter:
Type | Parameter | Name |
---|---|---|
struct timer_list * | timer | |
unsigned long * | flags |
923 | cycle |
934 | If Not (tf & TIMER_MIGRATING) Then |
935 | base = get_timer_base(tf) |
936 | raw_spin_lock_irqsave( & lock, * flags) |
939 | raw_spin_unlock_irqrestore( & lock, * flags) |
941 | cpu_relax() |
Name | Describe |
---|---|
__mod_timer | |
add_timer_on | add_timer_on - start a timer on a particular CPU*@timer: the timer to be added*@cpu: the CPU to start it on* This is not very scalable on SMP. Double adds are not possible. |
del_timer | del_timer - deactivate a timer.*@timer: the timer to be deactivated* del_timer() deactivates a timer - this works on both active and inactive* timers.* The function returns whether it has deactivated a pending timer or not.* (ie |
try_to_del_timer_sync | ry_to_del_timer_sync - Try to deactivate a timer*@timer: timer to delete* This function tries to deactivate a timer. Upon successful (ret >= 0)* exit the timer is not queued and the handler is not running on any CPU. |
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 |