rangelock
rangelock_cheat_lock(struct rangelock *lock, int locktype, bool trylock,
rangelock_cheat_unlock(struct rangelock *lock, void *cookie)
rangelock_cheat_destroy(struct rangelock *lock)
static void rangelock_noncheating_destroy(struct rangelock *lock);
rangelock_init(struct rangelock *lock)
rangelock_destroy(struct rangelock *lock)
rangelock_unlock_int(struct rangelock *lock, struct rl_q_entry *e)
rangelock_unlock(struct rangelock *lock, void *cookie)
rl_insert_sleep(struct rangelock *lock)
rangelock_noncheating_destroy(struct rangelock *lock)
rl_conflict(struct rangelock *lock, struct rl_q_entry *cur, struct rl_q_entry *e,
rl_r_validate(struct rangelock *lock, struct rl_q_entry *e, bool trylock,
rl_w_validate(struct rangelock *lock, struct rl_q_entry *e,
rl_insert(struct rangelock *lock, struct rl_q_entry *e, bool trylock,
rangelock_lock_int(struct rangelock *lock, bool trylock, vm_ooffset_t start,
rangelock_rlock(struct rangelock *lock, vm_ooffset_t start, vm_ooffset_t end)
rangelock_tryrlock(struct rangelock *lock, vm_ooffset_t start, vm_ooffset_t end)
rangelock_wlock(struct rangelock *lock, vm_ooffset_t start, vm_ooffset_t end)
rangelock_trywlock(struct rangelock *lock, vm_ooffset_t start, vm_ooffset_t end)
rangelock_may_recurse(struct rangelock *lock)
DB_SHOW_COMMAND(rangelock, db_show_rangelock)
struct rangelock *lock;
lock = (struct rangelock *)addr;
rangelock_cheat_drain(struct rangelock *lock)
struct rangelock shm_rl;
void rangelock_init(struct rangelock *lock);
void rangelock_destroy(struct rangelock *lock);
void rangelock_unlock(struct rangelock *lock, void *cookie);
void *rangelock_rlock(struct rangelock *lock, vm_ooffset_t start,
void *rangelock_tryrlock(struct rangelock *lock, vm_ooffset_t start,
void *rangelock_wlock(struct rangelock *lock, vm_ooffset_t start,
void *rangelock_trywlock(struct rangelock *lock, vm_ooffset_t start,
void rangelock_may_recurse(struct rangelock *lock);
struct rangelock v_rl; /* Byte-range lock */