diff options
Diffstat (limited to 'lib/drmtest.c')
-rw-r--r-- | lib/drmtest.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/lib/drmtest.c b/lib/drmtest.c index 02496c5d..f4a86005 100644 --- a/lib/drmtest.c +++ b/lib/drmtest.c @@ -1246,6 +1246,23 @@ void igt_stop_helper(struct igt_helper_process *proc) helper_process_count--; } +void igt_wait_helper(struct igt_helper_process *proc) +{ + int status; + + assert(proc->running); + + while (waitpid(proc->pid, &status, 0) == -1 && + errno == EINTR) + ; + igt_assert(WIFEXITED(status) && WEXITSTATUS(status) == 0); + + proc->running = false; + + helper_process_pids[proc->id] = -1; + helper_process_count--; +} + static void children_exit_handler(int sig) { int ret; |