• Home
  • Raw
  • Download

Lines Matching refs:un

495 			     int nsops, struct sem_undo *un, int pid)  in try_atomic_semop()  argument
515 int undo = un->semadj[sop->sem_num] - sem_op; in try_atomic_semop()
529 un->semadj[sop->sem_num] -= sop->sem_op; in try_atomic_semop()
872 struct sem_undo *un, *tu; in freeary() local
880 list_for_each_entry_safe(un, tu, &sma->list_id, list_id) { in freeary()
881 list_del(&un->list_id); in freeary()
882 spin_lock(&un->ulp->lock); in freeary()
883 un->semid = -1; in freeary()
884 list_del_rcu(&un->list_proc); in freeary()
885 spin_unlock(&un->ulp->lock); in freeary()
886 kfree_rcu(un, rcu); in freeary()
1029 struct sem_undo *un; in semctl_setval() local
1077 list_for_each_entry(un, &sma->list_id, list_id) in semctl_setval()
1078 un->semadj[semnum] = 0; in semctl_setval()
1164 struct sem_undo *un; in semctl_main() local
1206 list_for_each_entry(un, &sma->list_id, list_id) { in semctl_main()
1208 un->semadj[i] = 0; in semctl_main()
1401 struct sem_undo *un; in __lookup_undo() local
1403 list_for_each_entry_rcu(un, &ulp->list_proc, list_proc) { in __lookup_undo()
1404 if (un->semid == semid) in __lookup_undo()
1405 return un; in __lookup_undo()
1412 struct sem_undo *un; in lookup_undo() local
1416 un = __lookup_undo(ulp, semid); in lookup_undo()
1417 if (un) { in lookup_undo()
1418 list_del_rcu(&un->list_proc); in lookup_undo()
1419 list_add_rcu(&un->list_proc, &ulp->list_proc); in lookup_undo()
1421 return un; in lookup_undo()
1439 struct sem_undo *un, *new; in find_alloc_undo() local
1448 un = lookup_undo(ulp, semid); in find_alloc_undo()
1450 if (likely(un!=NULL)) in find_alloc_undo()
1464 un = ERR_PTR(-EIDRM); in find_alloc_undo()
1483 un = ERR_PTR(-EIDRM); in find_alloc_undo()
1491 un = lookup_undo(ulp, semid); in find_alloc_undo()
1492 if (un) { in find_alloc_undo()
1504 un = new; in find_alloc_undo()
1510 return un; in find_alloc_undo()
1547 struct sem_undo *un; in SYSCALL_DEFINE4() local
1596 un = find_alloc_undo(ns, semid); in SYSCALL_DEFINE4()
1597 if (IS_ERR(un)) { in SYSCALL_DEFINE4()
1598 error = PTR_ERR(un); in SYSCALL_DEFINE4()
1602 un = NULL; in SYSCALL_DEFINE4()
1634 if (un && un->semid == -1) in SYSCALL_DEFINE4()
1637 error = try_atomic_semop (sma, sops, nsops, un, task_tgid_vnr(current)); in SYSCALL_DEFINE4()
1651 queue.undo = un; in SYSCALL_DEFINE4()
1803 struct sem_undo *un; in exit_sem() local
1808 un = list_entry_rcu(ulp->list_proc.next, in exit_sem()
1810 if (&un->list_proc == &ulp->list_proc) in exit_sem()
1813 semid = un->semid; in exit_sem()
1820 sma = sem_obtain_object_check(tsk->nsproxy->ipc_ns, un->semid); in exit_sem()
1828 un = __lookup_undo(ulp, semid); in exit_sem()
1829 if (un == NULL) { in exit_sem()
1840 list_del(&un->list_id); in exit_sem()
1843 list_del_rcu(&un->list_proc); in exit_sem()
1849 if (un->semadj[i]) { in exit_sem()
1850 semaphore->semval += un->semadj[i]; in exit_sem()
1878 kfree_rcu(un, rcu); in exit_sem()