Lines Matching refs:iter

548 	repcache_iter_t *iter;  in iter_alloc()  local
549 iter = uu_zalloc(sizeof (repcache_iter_t)); in iter_alloc()
550 if (iter != NULL) in iter_alloc()
551 uu_avl_node_init(iter, &iter->ri_link, iter_pool); in iter_alloc()
552 return (iter); in iter_alloc()
556 iter_add(repcache_client_t *cp, repcache_iter_t *iter) in iter_add() argument
563 (void) uu_avl_find(cp->rc_iters, iter, NULL, &idx); in iter_add()
564 uu_avl_insert(cp->rc_iters, iter, idx); in iter_add()
572 repcache_iter_t *iter; in iter_find() local
576 iter = uu_avl_find(cp->rc_iters, &id, NULL, NULL); in iter_find()
577 if (iter != NULL) { in iter_find()
578 add_log_ptr(get_log(), RC_PTR_TYPE_ITER, id, iter); in iter_find()
579 (void) pthread_mutex_lock(&iter->ri_lock); in iter_find()
583 return (iter); in iter_find()
594 repcache_iter_t *iter; in iter_find_w_entity() local
599 iter = uu_avl_find(cp->rc_iters, &iter_id, NULL, NULL); in iter_find_w_entity()
602 assert(iter == NULL || !MUTEX_HELD(&iter->ri_lock)); in iter_find_w_entity()
605 if (iter == NULL || ep == NULL) { in iter_find_w_entity()
610 (void) pthread_mutex_lock(&iter->ri_lock); in iter_find_w_entity()
615 *iterp = iter; in iter_find_w_entity()
620 add_log_ptr(rlp, RC_PTR_TYPE_ITER, iter_id, iter); in iter_find_w_entity()
627 iter_release(repcache_iter_t *iter) in iter_release() argument
629 (void) pthread_mutex_unlock(&iter->ri_lock); in iter_release()
633 iter_destroy(repcache_iter_t *iter) in iter_destroy() argument
635 (void) pthread_mutex_lock(&iter->ri_lock); in iter_destroy()
636 rc_iter_destroy(&iter->ri_iter); in iter_destroy()
637 (void) pthread_mutex_unlock(&iter->ri_lock); in iter_destroy()
639 uu_avl_node_fini(iter, &iter->ri_link, iter_pool); in iter_destroy()
640 (void) pthread_mutex_destroy(&iter->ri_lock); in iter_destroy()
641 uu_free(iter); in iter_destroy()
647 repcache_iter_t *iter; in iter_remove() local
650 iter = uu_avl_find(cp->rc_iters, &id, NULL, NULL); in iter_remove()
651 if (iter != NULL) in iter_remove()
652 uu_avl_remove(cp->rc_iters, iter); in iter_remove()
655 if (iter != NULL) in iter_remove()
656 iter_destroy(iter); in iter_remove()
662 repcache_iter_t *iter; in iter_cleanup() local
666 while ((iter = uu_avl_teardown(cp->rc_iters, &cookie)) != NULL) { in iter_cleanup()
668 iter_destroy(iter); in iter_cleanup()
1141 repcache_iter_t *iter; in iter_setup() local
1149 if ((iter = iter_find(cp, rpr->rpr_iterid)) != NULL) { in iter_setup()
1150 sequence = iter->ri_sequence; in iter_setup()
1151 iter_release(iter); in iter_setup()
1160 iter = iter_alloc(cp); in iter_setup()
1161 if (iter == NULL) { in iter_setup()
1166 iter->ri_id = rpr->rpr_iterid; in iter_setup()
1167 iter->ri_type = REP_PROTOCOL_TYPE_INVALID; in iter_setup()
1168 iter->ri_sequence = 0; in iter_setup()
1169 iter_add(cp, iter); in iter_setup()
1192 repcache_iter_t *iter; in iter_start() local
1195 result = iter_find_w_entity(cp, rpr->rpr_iterid, &iter, in iter_start()
1201 if (iter->ri_sequence > 1) { in iter_start()
1206 if (iter->ri_sequence == 1) { in iter_start()
1213 result = rc_node_setup_iter(&ep->re_node, &iter->ri_iter, in iter_start()
1217 iter->ri_sequence++; in iter_start()
1220 iter_release(iter); in iter_start()
1246 repcache_iter_t *iter; in iter_read() local
1250 result = iter_find_w_entity(cp, rpr->rpr_iterid, &iter, in iter_read()
1258 if (iter->ri_sequence == 0) { in iter_read()
1259 iter_release(iter); in iter_read()
1265 iter_release(iter); in iter_read()
1270 if (sequence == iter->ri_sequence) { in iter_read()
1271 iter_release(iter); in iter_read()
1276 if (sequence == iter->ri_sequence + 1) { in iter_read()
1277 result = rc_iter_next(iter->ri_iter, &ep->re_node, in iter_read()
1281 iter->ri_sequence++; in iter_read()
1283 iter_release(iter); in iter_read()
1289 iter_release(iter); in iter_read()
1303 repcache_iter_t *iter; in iter_read_value() local
1309 iter = iter_find(cp, rpr->rpr_iterid); in iter_read_value()
1311 if (iter == NULL) { in iter_read_value()
1318 if (iter->ri_sequence == 0) { in iter_read_value()
1319 iter_release(iter); in iter_read_value()
1324 repeat = (sequence == iter->ri_sequence); in iter_read_value()
1326 if (sequence == 1 || (!repeat && sequence != iter->ri_sequence + 1)) { in iter_read_value()
1327 iter_release(iter); in iter_read_value()
1332 result = rc_iter_next_value(iter->ri_iter, out, outsz, repeat); in iter_read_value()
1335 iter->ri_sequence++; in iter_read_value()
1337 iter_release(iter); in iter_read_value()
1354 repcache_iter_t *iter = iter_find(cp, rpr->rpr_iterid); in iter_reset() local
1356 if (iter == NULL) in iter_reset()
1359 if (iter->ri_sequence != 0) { in iter_reset()
1360 iter->ri_sequence = 0; in iter_reset()
1361 rc_iter_destroy(&iter->ri_iter); in iter_reset()
1363 iter_release(iter); in iter_reset()