Update of /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction In directory sc8-pr-cvs1:/tmp/cvs-serv12437 Modified Files: sigaction07.17-1.c sigaction07.17-10.c sigaction07.17-11.c sigaction07.17-12.c sigaction07.17-13.c sigaction07.17-14.c sigaction07.17-15.c sigaction07.17-16.c sigaction07.17-17.c sigaction07.17-18.c sigaction07.17-19.c sigaction07.17-2.c sigaction07.17-20.c sigaction07.17-21.c sigaction07.17-22.c sigaction07.17-23.c sigaction07.17-24.c sigaction07.17-25.c sigaction07.17-26.c sigaction07.17-3.c sigaction07.17-4.c sigaction07.17-5.c sigaction07.17-6.c sigaction07.17-7.c sigaction07.17-8.c sigaction07.17-9.c Log Message: Applied fix from Andreas Jaeger: <<<<<<<< The testcase was non functional and non-portable: - Variables changed in signal handlers should use volatile sig_atomic_t - The timeout of child and parent should be different so that not both are awaked at the same time - The while loop exit condition was wrong I'm appending a patch, now the tests pass, Andreas >>>>>>>>>> Index: sigaction07.17-1.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-1.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-1.c 14 Apr 2003 15:56:21 -0000 1.1 +++ sigaction07.17-1.c 29 Apr 2003 14:52:08 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGABRT, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-10.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-10.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-10.c 14 Apr 2003 15:56:21 -0000 1.1 +++ sigaction07.17-10.c 29 Apr 2003 14:52:08 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGPIPE, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-11.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-11.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-11.c 14 Apr 2003 15:56:22 -0000 1.1 +++ sigaction07.17-11.c 29 Apr 2003 14:52:08 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGQUIT, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-12.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-12.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-12.c 14 Apr 2003 15:56:22 -0000 1.1 +++ sigaction07.17-12.c 29 Apr 2003 14:52:09 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGSEGV, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-13.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-13.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-13.c 14 Apr 2003 15:56:22 -0000 1.1 +++ sigaction07.17-13.c 29 Apr 2003 14:52:09 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGTERM, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-14.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-14.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-14.c 14 Apr 2003 15:56:22 -0000 1.1 +++ sigaction07.17-14.c 29 Apr 2003 14:52:09 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGTSTP, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-15.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-15.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-15.c 14 Apr 2003 15:56:22 -0000 1.1 +++ sigaction07.17-15.c 29 Apr 2003 14:52:09 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGTTIN, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-16.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-16.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-16.c 14 Apr 2003 15:56:22 -0000 1.1 +++ sigaction07.17-16.c 29 Apr 2003 14:52:09 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGTTOU, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-17.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-17.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-17.c 14 Apr 2003 15:56:23 -0000 1.1 +++ sigaction07.17-17.c 29 Apr 2003 14:52:09 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGUSR1, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-18.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-18.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-18.c 14 Apr 2003 15:56:23 -0000 1.1 +++ sigaction07.17-18.c 29 Apr 2003 14:52:09 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGUSR2, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-19.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-19.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-19.c 14 Apr 2003 15:56:23 -0000 1.1 +++ sigaction07.17-19.c 29 Apr 2003 14:52:09 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGPOLL, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-2.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-2.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-2.c 14 Apr 2003 15:56:24 -0000 1.1 +++ sigaction07.17-2.c 29 Apr 2003 14:52:09 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGALRM, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-20.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-20.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-20.c 14 Apr 2003 15:56:27 -0000 1.1 +++ sigaction07.17-20.c 29 Apr 2003 14:52:09 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGPROF, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-21.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-21.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-21.c 14 Apr 2003 15:56:27 -0000 1.1 +++ sigaction07.17-21.c 29 Apr 2003 14:52:09 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGSYS, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-22.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-22.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-22.c 14 Apr 2003 15:56:27 -0000 1.1 +++ sigaction07.17-22.c 29 Apr 2003 14:52:09 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGTRAP, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-23.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-23.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-23.c 14 Apr 2003 15:56:28 -0000 1.1 +++ sigaction07.17-23.c 29 Apr 2003 14:52:09 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGURG, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-24.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-24.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-24.c 14 Apr 2003 15:56:28 -0000 1.1 +++ sigaction07.17-24.c 29 Apr 2003 14:52:09 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGVTALRM, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-25.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-25.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-25.c 14 Apr 2003 15:56:28 -0000 1.1 +++ sigaction07.17-25.c 29 Apr 2003 14:52:09 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGXCPU, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-26.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-26.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-26.c 14 Apr 2003 15:56:28 -0000 1.1 +++ sigaction07.17-26.c 29 Apr 2003 14:52:09 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGXFSZ, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-3.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-3.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-3.c 14 Apr 2003 15:56:28 -0000 1.1 +++ sigaction07.17-3.c 29 Apr 2003 14:52:09 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGBUS, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-4.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-4.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-4.c 14 Apr 2003 15:56:28 -0000 1.1 +++ sigaction07.17-4.c 29 Apr 2003 14:52:09 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGCHLD, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-5.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-5.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-5.c 14 Apr 2003 15:56:28 -0000 1.1 +++ sigaction07.17-5.c 29 Apr 2003 14:52:10 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGCONT, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-6.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-6.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-6.c 14 Apr 2003 15:56:28 -0000 1.1 +++ sigaction07.17-6.c 29 Apr 2003 14:52:10 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGFPE, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-7.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-7.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-7.c 14 Apr 2003 15:56:28 -0000 1.1 +++ sigaction07.17-7.c 29 Apr 2003 14:52:10 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGHUP, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-8.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-8.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-8.c 14 Apr 2003 15:56:28 -0000 1.1 +++ sigaction07.17-8.c 29 Apr 2003 14:52:10 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGILL, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); Index: sigaction07.17-9.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/sigaction/sigaction07.17-9.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sigaction07.17-9.c 14 Apr 2003 15:56:28 -0000 1.1 +++ sigaction07.17-9.c 29 Apr 2003 14:52:10 -0000 1.2 @@ -24,7 +24,7 @@ #include <errno.h> #include "posixtest.h" -int wakeup = 0; +volatile sig_atomic_t wakeup = 0; void handler(int signo) { @@ -46,8 +46,8 @@ sigemptyset(&act.sa_mask); sigaction(SIGINT, &act, 0); - while(wakeup == 1) { - tv.tv_sec = 1; + while(wakeup == 0) { + tv.tv_sec = 10; tv.tv_usec = 0; if (select(0, NULL, NULL, NULL, &tv)== -1 && errno == EINTR) { @@ -74,6 +74,7 @@ POSIX conformant OS to not schedule the child process for a long time.) */ + /* This timeout should be smaller than the one in the child. */ tv.tv_sec = 1; tv.tv_usec = 0; select(0, NULL, NULL, NULL, &tv); |