Lines Matching +full:multi +full:- +full:attr
1 // SPDX-License-Identifier: GPL-2.0
4 * sched-messaging.c
13 #include <subcmd/parse-options.h>
76 if (poll(&pollfd, 1, -1) != 1) in ready()
86 ready(ctx->ready_out, ctx->wakefd); in sender()
91 for (j = 0; j < ctx->num_fds; j++) { in sender()
95 ret = write(ctx->out_fds[j], data + done, in sender()
96 sizeof(data)-done); in sender()
115 close(ctx->in_fds[1]); in receiver()
118 ready(ctx->ready_out, ctx->wakefd); in receiver()
121 for (i = 0; i < ctx->num_packets; i++) { in receiver()
126 ret = read(ctx->in_fds[0], data + done, DATASIZE - done); in receiver()
139 pthread_attr_t attr; in create_worker() local
147 case -1: in create_worker()
161 if (pthread_attr_init(&attr) != 0) in create_worker()
165 if (pthread_attr_setstacksize(&attr, PTHREAD_STACK_MIN) != 0) in create_worker()
169 ret = pthread_create(&childid, &attr, func, ctx); in create_worker()
215 ctx->num_packets = num_fds * nr_loops; in group()
216 ctx->in_fds[0] = fds[0]; in group()
217 ctx->in_fds[1] = fds[1]; in group()
218 ctx->ready_out = ready_out; in group()
219 ctx->wakefd = wakefd; in group()
223 snd_ctx->out_fds[i] = fds[1]; in group()
230 snd_ctx->ready_out = ready_out; in group()
231 snd_ctx->wakefd = wakefd; in group()
232 snd_ctx->num_fds = num_fds; in group()
240 close(snd_ctx->out_fds[i]); in group()
250 "Be multi thread instead of multi process"),