Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:ipc\msg.c Create Date:2022-07-28 16:41:17
Last Modify:2020-03-17 22:56:56 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:ss_wakeup

Proto:static void ss_wakeup(struct msg_queue *msq, struct wake_q_head *wake_q, bool kill)

Type:void

Parameter:

TypeParameterName
struct msg_queue *msq
struct wake_q_head *wake_q
boolkill
201  struct task_struct * stop_tsk = NULL
202  h = q_senders
205  If kill Then next = NULL
213  Else if stop_tsk == tsk Then Break
222  Else if Not msg_fits_inqueue(msq, msgsz) Then
223  If Not stop_tsk Then stop_tsk = tsk
226  list_move_tail - delete from one list and add as another's tail*@list: the entry to move*@head: the head that will follow our entry
227  Continue
230  wake_q_add() - queue a wakeup for 'later' waking
Caller
NameDescribe
freequeque() wakes up waiters on the sender and receiver waiting queue,* removes the message queue from message queue ID IDR, and cleans up all the* messages associated with this queue.* msg_ids.rwsem (writer) and the spinlock for this message queue are held
msgctl_downThis function handles some msgctl commands which require the rwsem* to be held in write mode.* NOTE: no locks must be held, the rwsem is taken inside this function.
do_msgrcv