Hi~ I got the following FAIL, and this FAIL often happens when running the fork13 test with -C option. See this:
./fork13 -c 3 -I 1 fork13 1 TPASS : 5729 pids forked, all passed fork13 1 TFAIL : Wait return value: expected pid=10511, got 32132, iteration 2957. fork13 1 TPASS : 2755 pids forked, all passed That is because the first process is the father of the other two processes, and when the father calls wait(), any of the children could be waited. So I think we should use waitpid() instead of wait(). Here is the patch. Please comment! Signed-off-by: Tang Chen <[email protected]> --- testcases/kernel/syscalls/fork/fork13.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/testcases/kernel/syscalls/fork/fork13.c b/testcases/kernel/syscalls/fork/fork13.c index 4804ea1..7fcf3d1 100644 --- a/testcases/kernel/syscalls/fork/fork13.c +++ b/testcases/kernel/syscalls/fork/fork13.c @@ -114,7 +114,7 @@ void check(void) } last_pid = pid; - reaped = wait(&status); + reaped = waitpid(pid, &status, 0); if (reaped != pid) { tst_resm(TFAIL, "Wait return value: expected pid=%d, " -- 1.7.4 -- Best Regards, Tang chen ------------------------------------------------------------------------------ EditLive Enterprise is the world's most technically advanced content authoring tool. Experience the power of Track Changes, Inline Image Editing and ensure content is compliant with Accessibility Checking. http://p.sf.net/sfu/ephox-dev2dev _______________________________________________ Ltp-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ltp-list
