aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Schwinge <thomas@codesourcery.com>2012-02-10 12:18:48 +0100
committerThomas Schwinge <thomas@codesourcery.com>2012-02-10 12:18:48 +0100
commitfb779be7b35b1b7c9f3c9d64ee210b98e19be3bf (patch)
treecb3fe6cc1dc5f09de70d2f08a5f5bdee0a7ea6c4
parentae5ca1973a9ec1b51dd12b555f038991bcc04c04 (diff)
downloadglibc-fb779be7b35b1b7c9f3c9d64ee210b98e19be3bf.zip
glibc-fb779be7b35b1b7c9f3c9d64ee210b98e19be3bf.tar.gz
glibc-fb779be7b35b1b7c9f3c9d64ee210b98e19be3bf.tar.bz2
A bit of testsuite cleanup.
-rw-r--r--ChangeLog7
-rw-r--r--rt/tst-cpuclock1.c19
-rw-r--r--rt/tst-cpuclock2.c26
3 files changed, 38 insertions, 14 deletions
diff --git a/ChangeLog b/ChangeLog
index 1f037dc..e04d86c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2012-02-10 Thomas Schwinge <thomas@codesourcery.com>
+
+ * rt/tst-cpuclock1.c: Add a few comments, and error checking for
+ nanosleep invocations.
+ * rt/tst-cpuclock2.c: Print some values as intended, fix explanatory
+ strings, and add error checking for a nanosleep invocations.
+
2012-02-09 Paul Eggert <eggert@cs.ucla.edu>
Replace FSF snail mail address with URLs, as per GNU coding standards.
diff --git a/rt/tst-cpuclock1.c b/rt/tst-cpuclock1.c
index 9d68ec5..edc0476 100644
--- a/rt/tst-cpuclock1.c
+++ b/rt/tst-cpuclock1.c
@@ -1,5 +1,5 @@
/* Test program for process CPU clocks.
- Copyright (C) 2004 Free Software Foundation, Inc.
+ Copyright (C) 2004, 2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -130,11 +130,17 @@ do_test (void)
result = 1;
goto done;
}
+ /* Should be close to 0.0. */
printf ("live PID %d before sleep => %lu.%.9lu\n",
child, before.tv_sec, before.tv_nsec);
struct timespec sleeptime = { .tv_nsec = 500000000 };
- nanosleep (&sleeptime, NULL);
+ if (nanosleep (&sleeptime, NULL) != 0)
+ {
+ perror ("nanosleep");
+ result = 1;
+ goto done;
+ }
if (clock_gettime (child_clock, &after) < 0)
{
@@ -143,6 +149,7 @@ do_test (void)
result = 1;
goto done;
}
+ /* Should be close to 0.5. */
printf ("live PID %d after sleep => %lu.%.9lu\n",
child, after.tv_sec, after.tv_nsec);
@@ -213,7 +220,12 @@ do_test (void)
/* Wait long enough to let the child finish dying. */
sleeptime.tv_nsec = 200000000;
- nanosleep (&sleeptime, NULL);
+ if (nanosleep (&sleeptime, NULL) != 0)
+ {
+ perror ("nanosleep");
+ result = 1;
+ goto done;
+ }
struct timespec dead;
if (clock_gettime (child_clock, &dead) < 0)
@@ -223,6 +235,7 @@ do_test (void)
result = 1;
goto done;
}
+ /* Should be close to 0.6. */
printf ("dead PID %d => %lu.%.9lu\n",
child, dead.tv_sec, dead.tv_nsec);
diff --git a/rt/tst-cpuclock2.c b/rt/tst-cpuclock2.c
index d08dc62..e3545f2 100644
--- a/rt/tst-cpuclock2.c
+++ b/rt/tst-cpuclock2.c
@@ -1,5 +1,5 @@
/* Test program for process and thread CPU clocks.
- Copyright (C) 2005 Free Software Foundation, Inc.
+ Copyright (C) 2005, 2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -216,7 +216,7 @@ do_test (void)
struct timespec res;
if (clock_getres (th_clock, &res) < 0)
{
- printf ("clock_getres on thread clock %lx => %s\n",
+ printf ("clock_getres on live thread clock %lx => %s\n",
(unsigned long int) th_clock, strerror (errno));
result = 1;
return 1;
@@ -228,7 +228,7 @@ do_test (void)
if (clock_gettime (process_clock, &process_before) < 0)
{
printf ("clock_gettime on process clock %lx => %s\n",
- (unsigned long int) th_clock, strerror (errno));
+ (unsigned long int) process_clock, strerror (errno));
return 1;
}
@@ -245,15 +245,19 @@ do_test (void)
struct timespec me_before, me_after;
if (clock_gettime (my_thread_clock, &me_before) < 0)
{
- printf ("clock_gettime on live thread clock %lx => %s\n",
- (unsigned long int) th_clock, strerror (errno));
+ printf ("clock_gettime on self thread clock %lx => %s\n",
+ (unsigned long int) my_thread_clock, strerror (errno));
return 1;
}
printf ("self thread before sleep => %lu.%.9lu\n",
me_before.tv_sec, me_before.tv_nsec);
struct timespec sleeptime = { .tv_nsec = 500000000 };
- nanosleep (&sleeptime, NULL);
+ if (nanosleep (&sleeptime, NULL) != 0)
+ {
+ perror ("nanosleep");
+ return 1;
+ }
if (clock_gettime (th_clock, &after) < 0)
{
@@ -267,14 +271,14 @@ do_test (void)
if (clock_gettime (process_clock, &process_after) < 0)
{
printf ("clock_gettime on process clock %lx => %s\n",
- (unsigned long int) th_clock, strerror (errno));
+ (unsigned long int) process_clock, strerror (errno));
return 1;
}
if (clock_gettime (my_thread_clock, &me_after) < 0)
{
- printf ("clock_gettime on live thread clock %lx => %s\n",
- (unsigned long int) th_clock, strerror (errno));
+ printf ("clock_gettime on self thread clock %lx => %s\n",
+ (unsigned long int) my_thread_clock, strerror (errno));
return 1;
}
printf ("self thread after sleep => %lu.%.9lu\n",
@@ -286,7 +290,7 @@ do_test (void)
if (th_diff < 100000000 || th_diff > 600000000)
{
- printf ("thread before - after %llu outside reasonable range\n",
+ printf ("live thread before - after %llu outside reasonable range\n",
th_diff);
result = 1;
}
@@ -305,7 +309,7 @@ do_test (void)
result = 1;
}
- process_after.tv_nsec += test_nanosleep (th_clock, "thread",
+ process_after.tv_nsec += test_nanosleep (th_clock, "live thread",
&after, &result);
process_after.tv_nsec += test_nanosleep (process_clock, "process",
&process_after, &result);