sys_waitid
asmlinkage long sys_waitid(int which, pid_t pid,
__SC_COMP(__NR_waitid, sys_waitid, compat_sys_waitid)
__SC_COMP(__NR_waitid, sys_waitid, compat_sys_waitid)
ASSERT_GE(sys_waitid(P_PID, pid, NULL, WEXITED), 0);
ASSERT_GE(sys_waitid(P_PID, pid, NULL, WEXITED), 0);
ASSERT_GE(sys_waitid(P_PID, pid, NULL, WEXITED), 0);
ASSERT_EQ(sys_waitid(P_PID, pid, NULL, WEXITED), 0);
EXPECT_EQ(sys_waitid(P_PID, self->child_pid1, NULL, WEXITED), 0);
EXPECT_EQ(sys_waitid(P_PID, self->child_pid2, NULL, WEXITED), 0);
EXPECT_EQ(sys_waitid(P_PID, self->child_pid3, NULL, WEXITED), 0);
EXPECT_EQ(sys_waitid(P_PID, self->child_pid3, NULL, WEXITED | WNOWAIT), 0);
EXPECT_EQ(sys_waitid(P_PID, self->child_pid3, NULL, WEXITED), 0);
EXPECT_EQ(sys_waitid(P_PID, self->child_pid3, NULL, WEXITED), 0);
EXPECT_EQ(sys_waitid(P_PID, self->child_pid4, NULL, WEXITED), 0);
sys_waitid(P_PID, self->child_pid1, NULL, WEXITED);
sys_waitid(P_PID, self->child_pid2, NULL, WEXITED);
sys_waitid(P_PID, self->child_pid3, NULL, WEXITED);
sys_waitid(P_PID, self->child_pid4, NULL, WEXITED);
EXPECT_EQ(sys_waitid(P_PIDFD, pidfd_leader, NULL, WEXITED), 0);
EXPECT_EQ(sys_waitid(P_PIDFD, pidfd_leader, NULL, WEXITED), 0);
EXPECT_EQ(sys_waitid(P_PIDFD, pidfd_leader, NULL, WEXITED), 0);
sys_waitid(P_PIDFD, pidfd, NULL, WEXITED);
sys_waitid(P_PIDFD, pidfd, NULL, WEXITED);
EXPECT_EQ(sys_waitid(P_PID, self->child_pid2, NULL, WEXITED), 0);
sys_waitid(P_PID, self->child_pid, NULL, WEXITED);
ASSERT_EQ(sys_waitid(P_PID, self->child_pid_exited, NULL, WEXITED | WNOWAIT), 0);
ASSERT_EQ(sys_waitid(P_PID, self->child_pid_exited, NULL, WEXITED), 0);
ASSERT_EQ(sys_waitid(P_PID, self->child_pid1, NULL, WEXITED), 0);
ASSERT_EQ(sys_waitid(P_PID, self->child_pid2, NULL, WEXITED), 0);
ASSERT_EQ(sys_waitid(P_PIDFD, pidfd, &info, WSTOPPED), 0);
ASSERT_EQ(sys_waitid(P_PIDFD, pidfd, &info, WCONTINUED), 0);
ASSERT_EQ(sys_waitid(P_PIDFD, pidfd, &info, WUNTRACED), 0);
ASSERT_EQ(sys_waitid(P_PIDFD, pidfd, &info, WEXITED), 0);
ret = sys_waitid(P_PIDFD, pidfd, &info, WEXITED);
ret = sys_waitid(P_PIDFD, pidfd, &info, WEXITED);
ret = sys_waitid(P_PIDFD, pidfd, &info, WEXITED | WNOHANG);
ASSERT_EQ(sys_waitid(P_PIDFD, pidfd, &info, WSTOPPED), 0);
ASSERT_EQ(sys_waitid(P_PIDFD, pidfd, &info, WEXITED), 0);
pid = sys_waitid(P_PIDFD, pidfd, &info, WEXITED);
pid = sys_waitid(P_PIDFD, pidfd, &info, WEXITED);
pid = sys_waitid(P_PIDFD, pidfd, &info, WEXITED);
sys_waitid(P_PID, self->child_pid, NULL, WEXITED);