Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\time\timer.c Create Date:2022-07-28 10:40:02
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:schedule_timeout - sleep until timeout*@timeout: timeout value in jiffies* Make the current task sleep until @timeout jiffies have* elapsed

Proto:signed long __sched schedule_timeout(signed long timeout)

Type:signed long

Parameter:

TypeParameterName
signed longtimeout
1863  Case timeout == MAX_SCHEDULE_TIMEOUT
1871  schedule()
1872  Go to out
1873  Default
1881  If timeout < 0 Then
1884  dump_stack()
1886  Go to out
1890  expire = timeout + jiffies
1892  task = current process
1893  timer_setup_on_stack( & timer, process_timeout, 0)
1894  __mod_timer( & timer, expire, 0)
1895  schedule()
1896  del_singleshot_timer_sync( & timer)
1899  destroy_timer_on_stack( & timer)
1901  timeout = expire - jiffies
1903  out :
1904  Return If timeout < 0 Then 0 Else timeout
Caller
NameDescribe
io_schedule_timeoutThis task is about to go to sleep on IO. Increment rq->nr_iowait so* that process accounting knows that this is a task in IO wait state.
wait_wokenDEFINE_WAIT_FUNC(wait, woken_wake_func);* add_wait_queue(&wq_head, &wait);* for (;;) {* if (condition)* break;* // in wait_woken() // in woken_wake_function()* p->state = mode; wq_entry->flags |= WQ_FLAG_WOKEN;* smp_mb(); // A try_to_wake_up():* if
bit_wait_timeout
__down_commonBecause this function is inlined, the 'state' parameter will be* constant, and thus optimised away by the compiler. Likewise the* 'timeout' parameter for the cases without timeouts.
schedule_timeout_interruptibleWe can use __set_current_state() here because schedule_timeout() calls* schedule() unconditionally.
schedule_timeout_killable
schedule_timeout_uninterruptible
schedule_timeout_idleLike schedule_timeout_uninterruptible(), except this task will not contribute* to load average.
audit_log_startaudit_log_start - obtain an audit buffer*@ctx: audit_context (may be NULL)*@gfp_mask: type of allocation*@type: audit message type* Returns audit_buffer pointer on success or NULL on error
ring_buffer_producer_thread
io_wq_managerManager thread. Tasked with creating new workers, if we need them.