Lines Matching defs:sem
23 static int read_sem_state(int sem, __u32 *count, __u32 *max)
29 ret = ioctl(sem, NTSYNC_IOC_SEM_READ, &args);
35 #define check_sem_state(sem, count, max) \
38 int ret = read_sem_state((sem), &__count, &__max); \
44 static int release_sem(int sem, __u32 *count)
46 return ioctl(sem, NTSYNC_IOC_SEM_RELEASE, count);
152 int fd, ret, sem;
161 sem = ioctl(fd, NTSYNC_IOC_CREATE_SEM, &sem_args);
162 EXPECT_EQ(-1, sem);
167 sem = ioctl(fd, NTSYNC_IOC_CREATE_SEM, &sem_args);
168 EXPECT_LE(0, sem);
169 check_sem_state(sem, 2, 2);
172 ret = release_sem(sem, &count);
175 check_sem_state(sem, 2, 2);
178 ret = release_sem(sem, &count);
181 check_sem_state(sem, 2, 2);
183 ret = wait_any(fd, 1, &sem, 123, &index);
186 check_sem_state(sem, 1, 2);
188 ret = wait_any(fd, 1, &sem, 123, &index);
191 check_sem_state(sem, 0, 2);
193 ret = wait_any(fd, 1, &sem, 123, &index);
198 ret = release_sem(sem, &count);
201 check_sem_state(sem, 0, 2);
204 ret = release_sem(sem, &count);
207 check_sem_state(sem, 2, 2);
209 ret = wait_any(fd, 1, &sem, 123, &index);
211 ret = wait_any(fd, 1, &sem, 123, &index);
215 ret = release_sem(sem, &count);
218 check_sem_state(sem, 1, 2);
221 ret = release_sem(sem, &count);
224 check_sem_state(sem, 1, 2);
226 close(sem);
1354 int fd, fd2, sem, ret;
1363 sem = ioctl(fd, NTSYNC_IOC_CREATE_SEM, &sem_args);
1364 EXPECT_GE(sem, 0);
1366 ret = wait_any(fd, 1, &sem, 0, &index);
1370 ret = wait_all(fd, 1, &sem, 0, &index);
1384 ret = wait_any(fd2, 1, &sem, 123, &index);
1388 close(sem);
1405 int fd, offset_fd, sem, ret, status, len;
1436 sem = ioctl(fd, NTSYNC_IOC_CREATE_SEM, &sem_args);
1437 if (sem < 0)
1440 obj = sem;