Lines Matching refs:args
55 struct thr_call_args *args;
71 /* populate the args structure */
72 args = malloc(sizeof (*args));
73 if (args == NULL) {
78 args->hp = hp;
79 args->cb = cb;
80 args->cookie = cookie;
81 args->msg_cb = msg_cb;
82 args->targets = targets;
92 NULL, 0, (void *(*)(void *)) slp_call, args, 0, &tid)) != 0) {
104 args, 0, NULL)) != 0) {
118 return (consumer(args));
120 free(args);
129 struct thr_call_args *args = (struct thr_call_args *)ap;
131 hp = args->hp;
140 cont = args->msg_cb(hp, reply, args->cb, args->cookie,
151 args->msg_cb(hp, NULL, args->cb, args->cookie,
165 free(args);
174 struct thr_call_args *args = (struct thr_call_args *)ap;
181 if (uc_scopes = slp_get_uc_scopes(args->targets)) {
186 len = slp_hdrlang_length(args->hp);
187 for (i = 0; i < args->hp->msg.iovlen; i++) {
188 len += args->hp->msg.iov[i].iov_len;
197 t = slp_next_uc_target(args->targets);
199 t = slp_next_uc_target(args->targets)) {
200 if (args->hp->cancel)
204 slp_uc_tcp_send(args->hp, t, uc_scopes,
207 slp_uc_udp_send(args->hp, t, uc_scopes);
212 if ((!args->hp->cancel) &&
213 (mc_scopes = slp_get_mc_scopes(args->targets)))
214 slp_mc_send(args->hp, mc_scopes);
217 if (args->hp->tcp_lock)
218 slp_tcp_wait(args->hp);
220 slp_destroy_target_list(args->targets);
223 free(args->hp->msg.iov);
224 free(args->hp->msg.msg);
227 (void) slp_enqueue(args->hp->q, NULL);