Module: xenomai-2.6 Branch: master Commit: f7926a94b37ff59b684e4338a37bca9bd97d19cc URL: http://git.xenomai.org/?p=xenomai-2.6.git;a=commit;h=f7926a94b37ff59b684e4338a37bca9bd97d19cc
Author: Gilles Chanteperdrix <gilles.chanteperd...@xenomai.org> Date: Mon Jun 25 08:50:07 2012 +0200 testsuite/nano_test: do not assume auto-shadowing of the maint thread --- src/testsuite/regression/posix/nano_test.c | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-) diff --git a/src/testsuite/regression/posix/nano_test.c b/src/testsuite/regression/posix/nano_test.c index 7db6d68..bcbf9cf 100644 --- a/src/testsuite/regression/posix/nano_test.c +++ b/src/testsuite/regression/posix/nano_test.c @@ -2,6 +2,8 @@ #include <stdlib.h> #include <errno.h> +#include <sched.h> +#include <pthread.h> #include <signal.h> #include <sys/mman.h> #include <sys/time.h> @@ -20,6 +22,7 @@ int main(void) struct timespec delay; struct sigaction sa; struct itimerval it; + struct sched_param sp; int err; mlockall(MCL_CURRENT | MCL_FUTURE); @@ -29,6 +32,9 @@ int main(void) sa.sa_flags = 0; check_unix(sigaction(SIGALRM, &sa, NULL)); + sp.sched_priority = 1; + check_pthread(pthread_setschedparam(pthread_self(), SCHED_FIFO, &sp)); + it.it_interval.tv_sec = 1; it.it_interval.tv_usec = 0; it.it_value = it.it_interval; @@ -37,7 +43,7 @@ int main(void) delay.tv_sec = 5; delay.tv_nsec = 0; err = nanosleep(&delay, &delay); - if (err != -1 || errno != EINTR || !gotsig || delay.tv_sec != 4) { + if (err != -1 || errno != EINTR || !gotsig || delay.tv_sec < 3 || delay.tv_sec > 4) { fprintf(stderr, "FAILURE, nanosleep: %s, received SIGALRM: %d, " "remaining time to sleep: %lu.%09lus\n", err ? strerror(errno) : strerror(err), gotsig, _______________________________________________ Xenomai-git mailing list Xenomai-git@xenomai.org http://www.xenomai.org/mailman/listinfo/xenomai-git