Lines Matching +full:slave +full:- +full:if

1 /*-
2 * SPDX-License-Identifier: BSD-4-Clause
4 * Copyright (c) 1996-1999
18 * 4. Neither the name of the author nor the names of any co-contributors
31 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
69 int master, slave; in yield() local
77 if (set.sched_priority == -1 && errno) { in yield()
82 if (argc == 1) in yield()
85 else if (argc != 2) { in yield()
87 exit(-1); in yield()
93 PROT_READ|PROT_WRITE, MAP_ANON|MAP_SHARED, -1, 0); in yield()
95 if (p == (int *)-1) in yield()
100 if (sched_setscheduler(0, SCHED_FIFO, &set) == -1) in yield()
106 if (got.sched_priority != set.sched_priority) { in yield()
109 exit(-1); in yield()
112 slave = 0; in yield()
118 if ((youngest = fork()) == 0) { in yield()
123 if (got.sched_priority != set.sched_priority) { in yield()
126 exit(-1); in yield()
129 master = 0; /* I'm a slave */ in yield()
130 slave = i + 1; /* With this flag */ in yield()
131 *p = slave; /* And I live */ in yield()
136 if (master) { in yield()
137 /* If we conform the slave processes haven't run yet. in yield()
138 * The master must yield to let the first slave run. in yield()
140 if (*p != 0) { in yield()
143 exit(-1); in yield()
147 /* Now the master yields, the first slave runs, and yields, in yield()
153 if (sched_yield() == -1) in yield()
156 if (master) { in yield()
159 /* The final slave process should be the last one started. in yield()
161 if (*p != nslaves) { in yield()
163 "Error at line %d: Final slave is %d not %d.\n", in yield()
165 exit(-1); in yield()
178 if (((*p) % nslaves) != in yield()
179 ((slave + nslaves - 1) % nslaves)) { in yield()
181 *p, slave, i); in yield()
182 exit(-1); in yield()
184 *p = slave; in yield()
188 buzz(slave); in yield()
190 if (sched_yield() == -1) in yield()