Home
last modified time | relevance | path

Searched refs:rrl (Results 1 – 2 of 2) sorted by relevance

/f-stack/freebsd/contrib/openzfs/module/zfs/
H A Drrwlock.c84 rrn_find(rrwlock_t *rrl) in rrn_find() argument
92 if (rn->rn_rrl == rrl) in rrn_find()
107 rn->rn_rrl = rrl; in rrn_add()
145 rrl->rr_writer = NULL; in rrw_init()
167 if (rrl->rr_writer == NULL && !rrl->rr_writer_wanted && in rrw_enter_read_impl()
178 while (rrl->rr_writer != NULL || (rrl->rr_writer_wanted && in rrw_enter_read_impl()
181 cv_wait(&rrl->rr_cv, &rrl->rr_lock); in rrw_enter_read_impl()
183 if (rrl->rr_writer_wanted || rrl->rr_track_all) { in rrw_enter_read_impl()
185 rrn_add(rrl, tag); in rrw_enter_read_impl()
223 cv_wait(&rrl->rr_cv, &rrl->rr_lock); in rrw_enter_write()
[all …]
/f-stack/freebsd/contrib/openzfs/include/sys/
H A Drrwlock.h73 void rrw_init(rrwlock_t *rrl, boolean_t track_all);
74 void rrw_destroy(rrwlock_t *rrl);
76 void rrw_enter_read(rrwlock_t *rrl, void *tag);
78 void rrw_enter_write(rrwlock_t *rrl);
79 void rrw_exit(rrwlock_t *rrl, void *tag);
80 boolean_t rrw_held(rrwlock_t *rrl, krw_t rw);
101 void rrm_destroy(rrmlock_t *rrl);
103 void rrm_enter_read(rrmlock_t *rrl, void *tag);
104 void rrm_enter_write(rrmlock_t *rrl);
105 void rrm_exit(rrmlock_t *rrl, void *tag);
[all …]