| Function report | 
| Source Code: ipc\sem.c | Create Date:2022-07-28 16:44:14 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name: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.
Proto:static void freeary(struct ipc_namespace *ns, struct kern_ipc_perm *ipcp)
Type:void
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| struct ipc_namespace * | ns | |
| struct kern_ipc_perm * | ipcp | 
| 1137 | semaphore set identifier = -1 | 
| 1139 | spin_unlock( & lock) | 
| 1145 | unlink_queue(sma, q) | 
| 1146 | wake_up_sem_queue_prepare(q, - EIDRM, & wake_q) | 
| 1150 | unlink_queue(sma, q) | 
| 1151 | wake_up_sem_queue_prepare(q, - EIDRM, & wake_q) | 
| 1153 | When i < . of semaphores in array cycle | 
| 1156 | unlink_queue(sma, q) | 
| 1157 | wake_up_sem_queue_prepare(q, - EIDRM, & wake_q) | 
| 1160 | unlink_queue(sma, q) | 
| 1161 | wake_up_sem_queue_prepare(q, - EIDRM, & wake_q) | 
| 1168 | sem_unlock(sma, - 1) | 
| 1172 | used_sems -= . of semaphores in array | 
| 1173 | ipc_rcu_putref( & permissions .. see ipc.h , sem_rcu_free) | 
| Name | Describe | 
|---|---|
| semctl_down | This function handles some semctl commands which require the rwsem* to be held in write mode.* NOTE: no locks must be held, the rwsem is taken inside this function. | 
| 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 |