about summary refs log tree commit diff
path: root/nptl/sysdeps
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-03-10 08:06:20 +0000
committerUlrich Drepper <drepper@redhat.com>2003-03-10 08:06:20 +0000
commit48f3314a00c7078ee985eba3ee93431c1d591f1e (patch)
tree9468e12f5f93c89d2903d172ed1f380d21441d2a /nptl/sysdeps
parent7b44a5e0a7a87304a4dc5ac8478579f5caa7f6a1 (diff)
downloadglibc-48f3314a00c7078ee985eba3ee93431c1d591f1e.tar.gz
glibc-48f3314a00c7078ee985eba3ee93431c1d591f1e.tar.xz
glibc-48f3314a00c7078ee985eba3ee93431c1d591f1e.zip
Definitions for condvar implementation on Linux/x86-64.
Diffstat (limited to 'nptl/sysdeps')
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h9
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86_64/lowlevelcond.h23
2 files changed, 28 insertions, 4 deletions
diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h b/nptl/sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h
index d7550d597d..5bb1753cdc 100644
--- a/nptl/sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h
+++ b/nptl/sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002 Free Software Foundation, Inc.
+/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
 
@@ -23,7 +23,7 @@
 #define __SIZEOF_PTHREAD_ATTR_T 56
 #define __SIZEOF_PTHREAD_MUTEX_T 40
 #define __SIZEOF_PTHREAD_MUTEXATTR_T 4
-#define __SIZEOF_PTHREAD_COND_T 24
+#define __SIZEOF_PTHREAD_COND_T 64
 #define __SIZEOF_PTHREAD_CONDATTR_T 4
 #define __SIZEOF_PTHREAD_RWLOCK_T 56
 #define __SIZEOF_PTHREAD_RWLOCKATTR_T 8
@@ -74,8 +74,9 @@ typedef union
   struct
   {
     int __lock;
-    unsigned int __nr_wakers;
-    unsigned int __nr_sleepers;
+    unsigned long long int __total_seq;
+    unsigned long long int __wakeup_seq;
+    unsigned long long int __woken_seq;
   } __data;
   char __size[__SIZEOF_PTHREAD_COND_T];
   long int __align;
diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevelcond.h b/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevelcond.h
new file mode 100644
index 0000000000..151dc76a36
--- /dev/null
+++ b/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevelcond.h
@@ -0,0 +1,23 @@
+/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+   Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#define cond_lock	0
+#define total_seq	8
+#define wakeup_seq	16
+#define woken_seq	24