about summary refs log tree commit diff
path: root/nptl
diff options
context:
space:
mode:
Diffstat (limited to 'nptl')
-rw-r--r--nptl/ChangeLog4
-rw-r--r--nptl/tst-context1.c16
2 files changed, 19 insertions, 1 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index 2475f1bb45..c197dd42ea 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,3 +1,7 @@
+2004-04-04  Ulrich Drepper  <drepper@redhat.com>
+
+	* tst-context1.c (fct): Check whether correct stack is used.
+
 2004-04-03  Ulrich Drepper  <drepper@redhat.com>
 
 	* sysdeps/unix/sysv/linux/powerpc/lowlevellock.h: Never use
diff --git a/nptl/tst-context1.c b/nptl/tst-context1.c
index ff6e381636..06e432b566 100644
--- a/nptl/tst-context1.c
+++ b/nptl/tst-context1.c
@@ -36,9 +36,23 @@ static volatile int failures;
 static void
 fct (long int n)
 {
+  char on_stack[1];
+
   /* Just to use the thread local descriptor.  */
-  printf ("%ld: in %s now\n", n, __FUNCTION__);
+  printf ("%ld: in %s now, on_stack = %p\n", n, __FUNCTION__, on_stack);
   errno = 0;
+
+  if (n < 0 || n >= N)
+    {
+      printf ("%ld out of range\n", n);
+      exit (1);
+    }
+
+  if (on_stack < stacks[n] || on_stack >= stacks[n] + sizeof (stacks[0]))
+    {
+      printf ("%ld: on_stack not on appropriate stack\n", n);
+      exit (1);
+    }
 }