Lines Matching refs:ulp

151 	struct sem_undo_list	*ulp;		/* back ptr to sem_undo_list */  member
1151 spin_lock(&un->ulp->lock); in freeary()
1154 spin_unlock(&un->ulp->lock); in freeary()
1866 static struct sem_undo *__lookup_undo(struct sem_undo_list *ulp, int semid) in __lookup_undo() argument
1870 list_for_each_entry_rcu(un, &ulp->list_proc, list_proc, in __lookup_undo()
1871 spin_is_locked(&ulp->lock)) { in __lookup_undo()
1878 static struct sem_undo *lookup_undo(struct sem_undo_list *ulp, int semid) in lookup_undo() argument
1882 assert_spin_locked(&ulp->lock); in lookup_undo()
1884 un = __lookup_undo(ulp, semid); in lookup_undo()
1887 list_add_rcu(&un->list_proc, &ulp->list_proc); in lookup_undo()
1906 struct sem_undo_list *ulp; in find_alloc_undo() local
1910 error = get_undo_list(&ulp); in find_alloc_undo()
1915 spin_lock(&ulp->lock); in find_alloc_undo()
1916 un = lookup_undo(ulp, semid); in find_alloc_undo()
1917 spin_unlock(&ulp->lock); in find_alloc_undo()
1954 spin_lock(&ulp->lock); in find_alloc_undo()
1959 un = lookup_undo(ulp, semid); in find_alloc_undo()
1966 new->ulp = ulp; in find_alloc_undo()
1968 assert_spin_locked(&ulp->lock); in find_alloc_undo()
1969 list_add_rcu(&new->list_proc, &ulp->list_proc); in find_alloc_undo()
1975 spin_unlock(&ulp->lock); in find_alloc_undo()
2315 struct sem_undo_list *ulp; in exit_sem() local
2317 ulp = tsk->sysvsem.undo_list; in exit_sem()
2318 if (!ulp) in exit_sem()
2322 if (!refcount_dec_and_test(&ulp->refcnt)) in exit_sem()
2334 un = list_entry_rcu(ulp->list_proc.next, in exit_sem()
2336 if (&un->list_proc == &ulp->list_proc) { in exit_sem()
2343 spin_lock(&ulp->lock); in exit_sem()
2344 spin_unlock(&ulp->lock); in exit_sem()
2348 spin_lock(&ulp->lock); in exit_sem()
2350 spin_unlock(&ulp->lock); in exit_sem()
2372 un = __lookup_undo(ulp, semid); in exit_sem()
2386 spin_lock(&ulp->lock); in exit_sem()
2388 spin_unlock(&ulp->lock); in exit_sem()
2423 kfree(ulp); in exit_sem()