about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--nptl/ChangeLog22
-rw-r--r--nptl/sysdeps/pthread/posix-timer.h6
-rw-r--r--nptl/sysdeps/pthread/timer_create.c8
-rw-r--r--nptl/sysdeps/pthread/timer_routines.c12
-rw-r--r--nptl/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h4
-rw-r--r--nptl/sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h4
-rw-r--r--nptl/tst-barrier2.c9
-rw-r--r--nptl/tst-clock1.c6
-rw-r--r--nptl/tst-clock2.c4
-rw-r--r--nptl/tst-cond11.c8
-rw-r--r--nptl/tst-cond4.c10
-rw-r--r--nptl/tst-cond6.c8
-rw-r--r--nptl/tst-flock2.c10
-rw-r--r--nptl/tst-mutex4.c10
-rw-r--r--nptl/tst-mutex9.c10
-rw-r--r--nptl/tst-rwlock12.c10
-rw-r--r--nptl/tst-rwlock4.c10
-rw-r--r--nptl/tst-signal1.c10
-rw-r--r--nptl/tst-spin2.c9
19 files changed, 57 insertions, 113 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index 85df60f1bd..49c4a94286 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,3 +1,25 @@
+2004-10-04  Ulrich Drepper  <drepper@redhat.com>
+
+	* sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Define _POSIX_CPUTIME
+	and _POSIX_THREAD_CPUTIME to zero.
+	* sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h: Likewise.
+	* tst-barrier2.c: Fix testing for POSIX feature.
+	* tst-clock1.c: Likewise.
+	* tst-clock2.c: Likewise.
+	* tst-cond11.c: Likewise.
+	* tst-cond4.c: Likewise.
+	* tst-cond6.c: Likewise.
+	* tst-flock2.c: Likewise.
+	* tst-mutex4.c: Likewise.
+	* tst-mutex9.c: Likewise.
+	* tst-rwlock12.c: Likewise.
+	* tst-rwlock4.c: Likewise.
+	* tst-signal1.c: Likewise.
+	* tst-spin2.c: Likewise.
+	* sysdeps/pthread/posix-timer.h: Likewise.
+	* sysdeps/pthread/timer_create.c: Likewise.
+	* sysdeps/pthread/timer_routines.c: Likewise.
+
 2004-10-01  Ulrich Drepper  <drepper@redhat.com>
 
 	* sysdeps/unix/sysv/linux/x86_64/lowlevellock.S
diff --git a/nptl/sysdeps/pthread/posix-timer.h b/nptl/sysdeps/pthread/posix-timer.h
index 948b1694c4..843e44711a 100644
--- a/nptl/sysdeps/pthread/posix-timer.h
+++ b/nptl/sysdeps/pthread/posix-timer.h
@@ -1,5 +1,5 @@
 /* Definitions for POSIX timer implementation on top of NPTL.
-   Copyright (C) 2000, 2002, 2003 Free Software Foundation, Inc.
+   Copyright (C) 2000, 2002, 2003, 2004 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Kaz Kylheku <kaz@ashi.footprints.net>.
 
@@ -92,10 +92,10 @@ extern int __timer_init_failed;
 /* A distinct thread is used for each clock type.  */
 
 extern struct thread_node __timer_signal_thread_rclk;
-#ifdef _POSIX_CPUTIME
+#if defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
 extern struct thread_node __timer_signal_thread_pclk;
 #endif
-#ifdef _POSIX_THREAD_CPUTIME
+#if defined _POSIX_THREAD_CPUTIME && _POSIX_THREAD_CPUTIME >= 0
 extern struct thread_node __timer_signal_thread_tclk;
 #endif
 
diff --git a/nptl/sysdeps/pthread/timer_create.c b/nptl/sysdeps/pthread/timer_create.c
index b74fafda62..57dd39e81b 100644
--- a/nptl/sysdeps/pthread/timer_create.c
+++ b/nptl/sysdeps/pthread/timer_create.c
@@ -38,10 +38,10 @@ timer_create (clock_id, evp, timerid)
   struct thread_node *thread = NULL;
 
   if (0
-#ifdef _POSIX_CPUTIME
+#ifdef CLOCK_PROCESS_CPUTIME_ID
       || clock_id == CLOCK_PROCESS_CPUTIME_ID
 #endif
-#ifdef _POSIX_THREAD_CPUTIME
+#ifdef CLOCK_THREAD_CPUTIME_ID
       || clock_id == CLOCK_THREAD_CPUTIME_ID
 #endif
       )
@@ -100,12 +100,12 @@ timer_create (clock_id, evp, timerid)
 	default:
 	  thread = &__timer_signal_thread_rclk;
 	  break;
-#ifdef _POSIX_CPUTIME
+#ifdef CLOCK_PROCESS_CPUTIME_ID
 	case CLOCK_PROCESS_CPUTIME_ID:
 	  thread = &__timer_signal_thread_pclk;
 	  break;
 #endif
-#ifdef _POSIX_THREAD_CPUTIME
+#ifdef CLOCK_THREAD_CPUTIME_ID
 	case CLOCK_THREAD_CPUTIME_ID:
 	  thread = &__timer_signal_thread_tclk;
 	  break;
diff --git a/nptl/sysdeps/pthread/timer_routines.c b/nptl/sysdeps/pthread/timer_routines.c
index 3ee8fef17b..caa93433e3 100644
--- a/nptl/sysdeps/pthread/timer_routines.c
+++ b/nptl/sysdeps/pthread/timer_routines.c
@@ -53,10 +53,10 @@ int __timer_init_failed;
 
 /* Node for the thread used to deliver signals.  */
 struct thread_node __timer_signal_thread_rclk;
-#ifdef _POSIX_CPUTIME
+#if defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
 struct thread_node __timer_signal_thread_pclk;
 #endif
-#ifdef _POSIX_THREAD_CPUTIME
+#if defined _POSIX_THREAD_CPUTIME && _POSIX_THREAD_CPUTIME >= 0
 struct thread_node __timer_signal_thread_tclk;
 #endif
 
@@ -191,10 +191,10 @@ init_module (void)
     list_append (&thread_free_list, &thread_array[i].links);
 
   thread_init (&__timer_signal_thread_rclk, 0, CLOCK_REALTIME);
-#ifdef _POSIX_CPUTIME
+#if defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
   thread_init (&__timer_signal_thread_pclk, 0, CLOCK_PROCESS_CPUTIME_ID);
 #endif
-#ifdef _POSIX_THREAD_CPUTIME
+#if defined _POSIX_THREAD_CPUTIME && _POSIX_THREAD_CPUTIME >= 0
   thread_init (&__timer_signal_thread_tclk, 0, CLOCK_THREAD_CPUTIME_ID);
 #endif
 }
@@ -281,10 +281,10 @@ thread_cleanup (void *val)
 
       /* How did the signal thread get killed?  */
       assert (thread != &__timer_signal_thread_rclk);
-#ifdef _POSIX_CPUTIME
+#if defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
       assert (thread != &__timer_signal_thread_pclk);
 #endif
-#ifdef _POSIX_THREAD_CPUTIME
+#if defined _POSIX_THREAD_CPUTIME && _POSIX_THREAD_CPUTIME >= 0
       assert (thread != &__timer_signal_thread_tclk);
 #endif
 
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h b/nptl/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h
index 7563de8ad2..2b5a3e6db8 100644
--- a/nptl/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h
+++ b/nptl/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h
@@ -103,10 +103,10 @@
 #define _POSIX_SHARED_MEMORY_OBJECTS	200112L
 
 /* CPU-time clocks supported.  */
-#define _POSIX_CPUTIME 200112L
+#define _POSIX_CPUTIME 0
 
 /* We support the clock also in threads.  */
-#define _POSIX_THREAD_CPUTIME  200112L
+#define _POSIX_THREAD_CPUTIME  0
 
 /* GNU libc provides regular expression handling.  */
 #define _POSIX_REGEXP	1
diff --git a/nptl/sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h b/nptl/sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h
index 7563de8ad2..2b5a3e6db8 100644
--- a/nptl/sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h
+++ b/nptl/sysdeps/unix/sysv/linux/ia64/bits/posix_opt.h
@@ -103,10 +103,10 @@
 #define _POSIX_SHARED_MEMORY_OBJECTS	200112L
 
 /* CPU-time clocks supported.  */
-#define _POSIX_CPUTIME 200112L
+#define _POSIX_CPUTIME 0
 
 /* We support the clock also in threads.  */
-#define _POSIX_THREAD_CPUTIME  200112L
+#define _POSIX_THREAD_CPUTIME  0
 
 /* GNU libc provides regular expression handling.  */
 #define _POSIX_REGEXP	1
diff --git a/nptl/tst-barrier2.c b/nptl/tst-barrier2.c
index b147ae1bfb..7f588694d6 100644
--- a/nptl/tst-barrier2.c
+++ b/nptl/tst-barrier2.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
 
@@ -31,12 +31,6 @@
 static int
 do_test (void)
 {
-#if ! _POSIX_THREAD_PROCESS_SHARED
-
-  puts ("_POSIX_THREAD_PROCESS_SHARED not supported, test skipped");
-
-#else
-
   size_t ps = sysconf (_SC_PAGESIZE);
   char tmpfname[] = "/tmp/tst-barrier2.XXXXXX";
   char data[ps];
@@ -183,7 +177,6 @@ do_test (void)
 	      WEXITSTATUS (status) + serials, N);
       return 1;
     }
-#endif
 
   return 0;
 }
diff --git a/nptl/tst-clock1.c b/nptl/tst-clock1.c
index fbb5fa907e..cba197943a 100644
--- a/nptl/tst-clock1.c
+++ b/nptl/tst-clock1.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003 Free Software Foundation, Inc.
+/* Copyright (C) 2003, 2004 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2003.
 
@@ -27,13 +27,13 @@
 int
 do_test (void)
 {
-#if _POSIX_THREAD_CPUTIME
+#ifdef _POSIX_THREAD_CPUTIME && _POSIX_THREAD_CPUTIME >= 0
   clockid_t cl;
   /* This is really only a linking-test here.  */
   int e = pthread_getcpuclockid (pthread_self (), &cl);
   if (e != 0)
     {
-# if _POSIX_THREAD_CPUTIME < 0
+# if _POSIX_THREAD_CPUTIME == 0
       if (sysconf (_SC_THREAD_CPUTIME) >= 0)
 # endif
 	{
diff --git a/nptl/tst-clock2.c b/nptl/tst-clock2.c
index 54f5041282..2ea2a529aa 100644
--- a/nptl/tst-clock2.c
+++ b/nptl/tst-clock2.c
@@ -25,7 +25,7 @@
 #include <unistd.h>
 
 
-#if _POSIX_THREAD_CPUTIME
+#ifdef _POSIX_THREAD_CPUTIME && _POSIX_THREAD_CPUTIME >= 0
 static pthread_barrier_t b2;
 static pthread_barrier_t bN;
 
@@ -55,7 +55,7 @@ tf (void *arg)
 int
 do_test (void)
 {
-#if _POSIX_THREAD_CPUTIME
+#if defined _POSIX_THREAD_CPUTIME && _POSIX_THREAD_CPUTIME >= 0
 # define N 10
 
   if (pthread_barrier_init (&b2, NULL, 2) != 0
diff --git a/nptl/tst-cond11.c b/nptl/tst-cond11.c
index 079dec5afc..90a3e15868 100644
--- a/nptl/tst-cond11.c
+++ b/nptl/tst-cond11.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003 Free Software Foundation, Inc.
+/* Copyright (C) 2003, 2004 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2003.
 
@@ -24,7 +24,7 @@
 #include <unistd.h>
 
 
-#if _POSIX_CLOCK_SELECTION
+#ifdef _POSIX_CLOCK_SELECTION && _POSIX_CLOCK_SELECTION >= 0
 static int
 run_test (clockid_t cl)
 {
@@ -156,7 +156,7 @@ run_test (clockid_t cl)
 static int
 do_test (void)
 {
-#if ! _POSIX_CLOCK_SELECTION
+#if !defined _POSIX_CLOCK_SELECTION || _POSIX_CLOCK_SELECTION == -1
 
   puts ("_POSIX_CLOCK_SELECTION not supported, test skipped");
   return 0;
@@ -165,7 +165,7 @@ do_test (void)
 
   int res = run_test (CLOCK_REALTIME);
 
-# if defined _POSIX_MONOTONIC_CLOCK
+# if defined _POSIX_MONOTONIC_CLOCK && _POSIX_MONOTONIC_CLOCK >= 0
 #  if _POSIX_MONOTONIC_CLOCK == 0
   int e = sysconf (_SC_MONOTONIC_CLOCK);
   if (e < 0)
diff --git a/nptl/tst-cond4.c b/nptl/tst-cond4.c
index 071528df0e..58c2bdaf07 100644
--- a/nptl/tst-cond4.c
+++ b/nptl/tst-cond4.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
 
@@ -32,13 +32,6 @@ int *condition;
 static int
 do_test (void)
 {
-#if ! _POSIX_THREAD_PROCESS_SHARED
-
-  puts ("_POSIX_THREAD_PROCESS_SHARED not supported, test skipped");
-  return 0;
-
-#else
-
   size_t ps = sysconf (_SC_PAGESIZE);
   char tmpfname[] = "/tmp/tst-cond4.XXXXXX";
   char data[ps];
@@ -264,7 +257,6 @@ do_test (void)
     }
 
  return result;
-#endif
 }
 
 #define TEST_FUNCTION do_test ()
diff --git a/nptl/tst-cond6.c b/nptl/tst-cond6.c
index be429df96d..b5dcaa810d 100644
--- a/nptl/tst-cond6.c
+++ b/nptl/tst-cond6.c
@@ -34,13 +34,6 @@ int *condition;
 static int
 do_test (void)
 {
-#if ! _POSIX_THREAD_PROCESS_SHARED
-
-  puts ("_POSIX_THREAD_PROCESS_SHARED not supported, test skipped");
-  return 0;
-
-#else
-
   size_t ps = sysconf (_SC_PAGESIZE);
   char tmpfname[] = "/tmp/tst-cond6.XXXXXX";
   char data[ps];
@@ -234,7 +227,6 @@ do_test (void)
     }
 
  return result;
-#endif
 }
 
 #define TEST_FUNCTION do_test ()
diff --git a/nptl/tst-flock2.c b/nptl/tst-flock2.c
index fdbffbb272..8ef3206cc4 100644
--- a/nptl/tst-flock2.c
+++ b/nptl/tst-flock2.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
 
@@ -59,13 +59,6 @@ tf (void *arg)
 static int
 do_test (void)
 {
-#if ! _POSIX_THREAD_PROCESS_SHARED
-
-  puts ("_POSIX_THREAD_PROCESS_SHARED not supported, test skipped");
-  return 0;
-
-#else
-
   char tmp[] = "/tmp/tst-flock2-XXXXXX";
 
   fd = mkstemp (tmp);
@@ -261,7 +254,6 @@ do_test (void)
     }
 
   return status;
-#endif
 }
 
 #define TEST_FUNCTION do_test ()
diff --git a/nptl/tst-mutex4.c b/nptl/tst-mutex4.c
index 9caed444c1..0ce7313caf 100644
--- a/nptl/tst-mutex4.c
+++ b/nptl/tst-mutex4.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
 
@@ -31,13 +31,6 @@
 static int
 do_test (void)
 {
-#if ! _POSIX_THREAD_PROCESS_SHARED
-
-  puts ("_POSIX_THREAD_PROCESS_SHARED not supported, test skipped");
-  return 0;
-
-#else
-
   size_t ps = sysconf (_SC_PAGESIZE);
   char tmpfname[] = "/tmp/tst-mutex4.XXXXXX";
   char data[ps];
@@ -191,7 +184,6 @@ do_test (void)
     }
 
   return 0;
-#endif
 }
 
 #define TIMEOUT 4
diff --git a/nptl/tst-mutex9.c b/nptl/tst-mutex9.c
index 94e993c5cb..5ea2f0ac99 100644
--- a/nptl/tst-mutex9.c
+++ b/nptl/tst-mutex9.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003 Free Software Foundation, Inc.
+/* Copyright (C) 2003, 2004 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2003.
 
@@ -29,13 +29,6 @@
 static int
 do_test (void)
 {
-#if ! _POSIX_THREAD_PROCESS_SHARED
-
-  puts ("_POSIX_THREAD_PROCESS_SHARED not supported, test skipped");
-  return 0;
-
-#else
-
   size_t ps = sysconf (_SC_PAGESIZE);
   char tmpfname[] = "/tmp/tst-mutex9.XXXXXX";
   char data[ps];
@@ -186,7 +179,6 @@ do_test (void)
     }
 
   return 0;
-#endif
 }
 
 #define TIMEOUT 3
diff --git a/nptl/tst-rwlock12.c b/nptl/tst-rwlock12.c
index 159d469afc..91f25d3b1e 100644
--- a/nptl/tst-rwlock12.c
+++ b/nptl/tst-rwlock12.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
 
@@ -31,13 +31,6 @@
 static int
 do_test (void)
 {
-#if ! _POSIX_THREAD_PROCESS_SHARED
-
-  puts ("_POSIX_THREAD_PROCESS_SHARED not supported, test skipped");
-  return 0;
-
-#else
-
   size_t ps = sysconf (_SC_PAGESIZE);
   char tmpfname[] = "/tmp/tst-rwlock12.XXXXXX";
   char data[ps];
@@ -209,7 +202,6 @@ do_test (void)
     }
 
   return status;
-#endif
 }
 
 #define TEST_FUNCTION do_test ()
diff --git a/nptl/tst-rwlock4.c b/nptl/tst-rwlock4.c
index 1fb47f7cd3..8de0121b30 100644
--- a/nptl/tst-rwlock4.c
+++ b/nptl/tst-rwlock4.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
 
@@ -31,13 +31,6 @@
 static int
 do_test (void)
 {
-#if ! _POSIX_THREAD_PROCESS_SHARED
-
-  puts ("_POSIX_THREAD_PROCESS_SHARED not supported, test skipped");
-  return 0;
-
-#else
-
   size_t ps = sysconf (_SC_PAGESIZE);
   char tmpfname[] = "/tmp/tst-rwlock4.XXXXXX";
   char data[ps];
@@ -191,7 +184,6 @@ do_test (void)
     }
 
   return 0;
-#endif
 }
 
 #define TEST_FUNCTION do_test ()
diff --git a/nptl/tst-signal1.c b/nptl/tst-signal1.c
index ad4b7870cf..3022f1846f 100644
--- a/nptl/tst-signal1.c
+++ b/nptl/tst-signal1.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
 
@@ -94,13 +94,6 @@ receiver (void)
 static int
 do_test (void)
 {
-#if ! _POSIX_THREAD_PROCESS_SHARED
-
-  puts ("_POSIX_THREAD_PROCESS_SHARED not supported, test skipped");
-  return 0;
-
-#else
-
   char tmp[] = "/tmp/tst-signal1-XXXXXX";
 
   int fd = mkstemp (tmp);
@@ -190,7 +183,6 @@ do_test (void)
     }
 
   return 0;
-#endif
 }
 
 #define TEST_FUNCTION do_test ()
diff --git a/nptl/tst-spin2.c b/nptl/tst-spin2.c
index 95a9293316..5b1df6c4a8 100644
--- a/nptl/tst-spin2.c
+++ b/nptl/tst-spin2.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+/* Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
 
@@ -31,12 +31,6 @@
 static int
 do_test (void)
 {
-#if ! _POSIX_THREAD_PROCESS_SHARED
-
-  puts ("_POSIX_THREAD_PROCESS_SHARED not supported, test skipped");
-
-#else
-
   size_t ps = sysconf (_SC_PAGESIZE);
   char tmpfname[] = "/tmp/tst-spin2.XXXXXX";
   char data[ps];
@@ -157,7 +151,6 @@ do_test (void)
 
       puts ("parent done");
     }
-#endif
 
   return 0;
 }