Lines Matching defs:lockp

269 	struct __db_lock *lockp;
283 lockp = OFFSET_TO_LOCK(lt, *lock);
286 locker, NULL, flags, obj, lock_mode, &lockp)) == 0) {
288 *lock = LOCK_TO_OFFSET(lt, lockp);
306 struct __db_lock *lockp;
320 lockp = OFFSET_TO_LOCK(lt, *lock);
323 txn->txnid, txn, flags, obj, lock_mode, &lockp)) == 0) {
325 *lock = LOCK_TO_OFFSET(lt, lockp);
338 struct __db_lock *lockp;
348 lockp = OFFSET_TO_LOCK(lt, lock);
349 ret = __lock_put_internal(lt, lockp, 0);
352 __lock_checklocker(lt, lockp, 0);
369 __lock_put_internal(lt, lockp, do_all)
371 struct __db_lock *lockp;
377 if (lockp->refcount == 0 || (lockp->status != DB_LSTAT_HELD &&
378 lockp->status != DB_LSTAT_WAITING) || lockp->obj == 0) {
380 (u_long)((u_int8_t *)lockp - (u_int8_t *)lt->region));
385 lt->region->nreleases += lockp->refcount;
388 if (do_all == 0 && lockp->refcount > 1) {
389 lockp->refcount--;
394 sh_obj = (DB_LOCKOBJ *)((u_int8_t *)lockp + lockp->obj);
397 SH_LIST_REMOVE(lockp, locker_links, __db_lock);
400 if (lockp->status != DB_LSTAT_HELD)
401 __lock_remove_waiter(lt, sh_obj, lockp, DB_LSTAT_FREE);
403 SH_TAILQ_REMOVE(&sh_obj->holders, lockp, links, __db_lock);
420 lockp->status = DB_LSTAT_FREE;
421 SH_TAILQ_INSERT_HEAD(&lt->region->free_locks, lockp, links, __db_lock);
434 __lock_get_internal(lt, locker, txn, flags, obj, lock_mode, lockp)
440 struct __db_lock **lockp;
523 *lockp = lp;
649 *lockp = newl;
657 (*lockp)->mode = lock_mode;
878 __lock_remove_waiter(lt, sh_obj, lockp, status)
881 struct __db_lock *lockp;
884 SH_TAILQ_REMOVE(&sh_obj->waiters, lockp, links, __db_lock);
885 lockp->status = status;
888 (void)__db_mutex_unlock(&lockp->mutex, lt->reginfo.fd);
892 __lock_checklocker(lt, lockp, do_remove)
894 struct __db_lock *lockp;
900 SH_LIST_REMOVE(lockp, locker_links, __db_lock);
903 if (__lock_getobj(lt, lockp->holder, NULL, DB_LOCK_LOCKER, &sh_locker)
937 struct __db_lock *lockp;
946 lockp = OFFSET_TO_LOCK(lt, lock);
947 lockp->mode = new_mode;
950 obj = (DB_LOCKOBJ *)((u_int8_t *)lockp + lockp->obj);