调用者| 名称 | 描述 |
| __mutex_unlock_slowpath | |
| rwsem_down_read_slowpath | Wait for the read lock to be granted |
| rwsem_down_write_slowpath | Wait until we successfully acquire the write lock |
| rwsem_wake | handle waking up a waiter on the semaphore* - up_read/up_write has decremented the active part of count if we come here |
| rwsem_downgrade_wake | downgrade a write lock into a read lock* - caller incremented waiting part of count and discovered it still negative* - just wake up any readers at the front of the queue |
| rt_mutex_postunlock | Performs the wakeup of the the top-waiter and re-enables preemption. |
| futex_wake | Wake up waiters matching bitset queued on this futex (uaddr). |
| futex_wake_op | Wake up all waiters hashed on the physical page that is mapped* to this virtual address: |
| futex_requeue | ex_requeue() - Requeue waiters from uaddr1 to uaddr2*@uaddr1: source futex user address*@flags: futex flags (FLAGS_SHARED, etc |
| cpu_stop_queue_work | queue @work to @stopper. if offline, @work is completed immediately |
| cpu_stop_queue_two_works | |
| msgctl_down | This 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_msgsnd | |
| do_msgrcv | |
| freeary | Free a semaphore set. freeary() is called with sem_ids.rwsem locked* as a writer and the spinlock for this semaphore set hold. sem_ids.rwsem* remains locked on exit. |
| semctl_setval | |
| semctl_main | |
| do_semtimedop | |
| exit_sem | add semadj values to semaphores, free undo structures |
| do_mq_timedsend | |
| do_mq_timedreceive | |
| freeque | que() 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 |