Lines Matching refs:tl
144 struct target_list *tl; in slp_new_target_list() local
162 if (!(tl = calloc(1, sizeof (*tl)))) { in slp_new_target_list()
166 tl->DAs = NULL; in slp_new_target_list()
168 if (!(tl->scopes = calloc(scope_cnt + 1, sizeof (*(tl->scopes))))) { in slp_new_target_list()
170 free(tl); in slp_new_target_list()
173 tl->uc_scopes = NULL; in slp_new_target_list()
174 tl->state = tl->scopes; in slp_new_target_list()
175 if (!(tl->all_scopes = strdup(scopes))) { in slp_new_target_list()
177 free(tl->scopes); free(tl); in slp_new_target_list()
181 if (!(tl->mc_scopes = strdup(scopes))) { in slp_new_target_list()
183 free(tl->scopes); free(tl->all_scopes); free(tl); in slp_new_target_list()
189 *handle = tl; in slp_new_target_list()
202 free(tl->scopes); in slp_new_target_list()
203 free(tl->all_scopes); in slp_new_target_list()
204 free(tl->mc_scopes); in slp_new_target_list()
205 free(tl); in slp_new_target_list()
212 free(tl->scopes); in slp_new_target_list()
213 free(tl->all_scopes); in slp_new_target_list()
214 free(tl->mc_scopes); in slp_new_target_list()
215 free(tl); in slp_new_target_list()
228 tl, &collator, &numResults); in slp_new_target_list()
232 tl, &collator, &numResults); in slp_new_target_list()
243 for (te = tl->DAs; te; te = te->next) in slp_new_target_list()
244 add2scopes_list(te, tl); in slp_new_target_list()
246 *handle = tl; in slp_new_target_list()
251 struct target_list *tl = (struct target_list *)h; in slp_get_uc_scopes() local
252 return (tl->uc_scopes); in slp_get_uc_scopes()
256 struct target_list *tl = (struct target_list *)h; in slp_get_mc_scopes() local
257 return (tl->mc_scopes); in slp_get_mc_scopes()
262 struct target_list *tl = (struct target_list *)h; in slp_next_uc_target() local
264 if (!(*tl->state)) in slp_next_uc_target()
267 for (; *tl->state; tl->state++) { in slp_next_uc_target()
268 if (!(*tl->state)->da->used && !(*tl->state)->da->failed) in slp_next_uc_target()
269 return (*tl->state++); in slp_next_uc_target()
270 if ((*tl->state)->da->failed) { in slp_next_uc_target()
272 if (p = slp_next_failover(*tl->state)) { in slp_next_uc_target()
273 tl->state++; in slp_next_uc_target()
345 struct target_list *tl = (struct target_list *)h; in slp_destroy_target_list() local
348 for (das = tl->DAs; das; das = dap) { in slp_destroy_target_list()
355 for (i = 0; tl->scopes[i]; i++) { in slp_destroy_target_list()
357 for (sts = tl->scopes[i]; sts; sts = stp) { in slp_destroy_target_list()
364 free(tl->scopes); in slp_destroy_target_list()
367 if (tl->uc_scopes) in slp_destroy_target_list()
368 free(tl->uc_scopes); in slp_destroy_target_list()
369 if (tl->mc_scopes) in slp_destroy_target_list()
370 free(tl->mc_scopes); in slp_destroy_target_list()
371 free(tl->all_scopes); in slp_destroy_target_list()
374 free(tl); in slp_destroy_target_list()
377 static void add2scopes_list(struct da_node *te, struct target_list *tl) { in add2scopes_list() argument
378 struct scope_targets **scopes = tl->scopes; in add2scopes_list()
387 for (s = tl->uc_scopes; s; s = p) { in add2scopes_list()
476 struct target_list *tl = (struct target_list *)cookie; in collect_DAs() local
528 for (s = tl->all_scopes; s; s = p) { in collect_DAs()
534 slp_add2list(s, &(tl->uc_scopes), SLP_TRUE); in collect_DAs()
535 slp_list_subtract(s, &(tl->mc_scopes)); in collect_DAs()
542 add_da_entry(&(tl->DAs), sin, sscopes, proximity, coverage); in collect_DAs()