Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

Name:Generic idle loop implementation* Called with polling cleared.

Proto:static void do_idle(void)

Type:void

Parameter:Nothing

233  cpu = smp_processor_id()
243  Idle thread specific functions to determine the need_resched* polling state.
244  tick_nohz_idle_enter()
246  When Not need_resched() cycle
247  rmb()
249  local_irq_disable()
251  If cpu_is_offline(cpu) Then
257  arch_cpu_idle_enter()
267  cpu_idle_poll()
268  Else
271  arch_cpu_idle_exit()
281  preempt_set_need_resched()
282  tick_nohz_idle_exit()
283  __current_clr_polling()
290  smp_mb__after_atomic()
292  sched_ttwu_pending()
293  synchronize_rcu_tasks() makes sure that no task is stuck in preempted* state (have scheduled out non-voluntarily) by making sure that all* tasks have either left the run queue or have gone into user space
295  If Value for the false possibility is greater at compile time(klp_patch_pending(current process)) Then klp_update_patch_state(current process)
Caller
NameDescribe
play_idle_precise
cpu_startup_entry