Lines Matching refs:lp

94 	struct __db_lock *lp;
117 list[i].obj, list[i].mode, &lp);
119 list[i].lock = LOCK_TO_OFFSET(lt, lp);
142 for (lp = SH_LIST_FIRST(&sh_locker->heldby, __db_lock);
143 lp != NULL;
144 lp = SH_LIST_FIRST(&sh_locker->heldby, __db_lock)) {
145 SH_LIST_REMOVE(lp, locker_links, __db_lock);
146 SH_LIST_INSERT_HEAD(&sh_parent->heldby, lp,
148 lp->holder = txn->parent->txnid;
154 lp = OFFSET_TO_LOCK(lt, list[i].lock);
155 if (lp->holder != locker) {
159 list[i].mode = lp->mode;
161 ret = __lock_put_internal(lt, lp, 0);
162 __lock_checklocker(lt, lp, 0);
170 for (lp = SH_LIST_FIRST(&sh_locker->heldby, __db_lock);
171 lp != NULL;
172 lp = SH_LIST_FIRST(&sh_locker->heldby, __db_lock)) {
173 if ((ret = __lock_put_internal(lt, lp, 1)) != 0)
195 for (lp = SH_TAILQ_FIRST(&sh_obj->waiters, __db_lock);
196 lp != NULL;
197 lp = SH_TAILQ_FIRST(&sh_obj->waiters, __db_lock)) {
198 lt->region->nreleases += lp->refcount;
199 __lock_remove_waiter(lt, sh_obj, lp,
201 __lock_checklocker(lt, lp, 1);
204 for (lp = SH_TAILQ_FIRST(&sh_obj->holders, __db_lock);
205 lp != NULL;
206 lp = SH_TAILQ_FIRST(&sh_obj->holders, __db_lock)) {
208 lt->region->nreleases += lp->refcount;
209 SH_LIST_REMOVE(lp, locker_links, __db_lock);
210 SH_TAILQ_REMOVE(&sh_obj->holders, lp, links,
212 lp->status = DB_LSTAT_FREE;
214 lp, links, __db_lock);
227 for (lp = SH_LIST_FIRST(&sh_locker->heldby, __db_lock);
228 lp != NULL;
229 lp = SH_LIST_NEXT(lp, locker_links, __db_lock)) {
230 __lock_printlock(lt, lp, 1);
442 struct __db_lock *newl, *lp;
508 for (lp = SH_TAILQ_FIRST(&sh_obj->holders, __db_lock);
509 lp != NULL;
510 lp = SH_TAILQ_NEXT(lp, links, __db_lock)) {
511 if (locker == lp->holder ||
512 __lock_is_parent(lp->holder, txn)) {
513 if (lp->mode == lock_mode &&
514 lp->status == DB_LSTAT_HELD) {
522 lp->refcount++;
523 *lockp = lp;
529 } else if (CONFLICTS(lt, lp->mode, lock_mode))
540 if (lp == NULL)
548 if (lp == NULL && !ihold)
549 for (lp = SH_TAILQ_FIRST(&sh_obj->waiters, __db_lock);
550 lp != NULL;
551 lp = SH_TAILQ_NEXT(lp, links, __db_lock)) {
552 if (CONFLICTS(lt, lp->mode, lock_mode) &&
553 locker != lp->holder)
556 if (lp == NULL)
580 if (lp != NULL) {
676 struct __db_lock *lp;
688 for (lp = SH_TAILQ_FIRST(&sh_obj->holders, __db_lock);
689 lp != NULL;
690 lp = SH_TAILQ_FIRST(&sh_obj->holders, __db_lock)) {
691 if (lp->holder == locker && lp->mode == mode)
704 __lock_printlock(lt, lp, ispgno)
706 struct __db_lock *lp;
715 switch (lp->mode) {
738 switch (lp->status) {
765 (u_long)lp->holder, mode, (u_long)lp->refcount, status);
767 lockobj = (DB_LOCKOBJ *)((u_int8_t *)lp + lp->obj);
774 obj = (u_int8_t *)lp + lp->obj - (u_int8_t *)lt->region;