[uClibc-cvs] uClibc/libc/sysdeps/linux/common/bits initspin.h,1.1,1.2 pthreadtypes.h,1.1,1.2
Erik Andersen
andersen at codepoet.org
Thu Feb 27 18:13:10 UTC 2003
Update of /var/cvs/uClibc/libc/sysdeps/linux/common/bits
In directory winder:/tmp/cvs-serv18985/libc/sysdeps/linux/common/bits
Modified Files:
initspin.h pthreadtypes.h
Log Message:
Major update for pthreads, based in large part on improvements
from glibc 2.3. This should make threads much more efficient.
-Erik
Index: initspin.h
===================================================================
RCS file: /var/cvs/uClibc/libc/sysdeps/linux/common/bits/initspin.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- initspin.h 1 Mar 2002 20:46:02 -0000 1.1
+++ initspin.h 27 Feb 2003 18:13:05 -0000 1.2
@@ -3,16 +3,16 @@
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Library General Public License as
- published by the Free Software Foundation; either version 2 of the
+ 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
- Library General Public License for more details.
+ Lesser General Public License for more details.
- You should have received a copy of the GNU Library General Public
+ You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; see the file COPYING.LIB. If not,
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
@@ -20,8 +20,9 @@
/* Initial value of a spinlock. Most platforms should use zero,
unless they only implement a "test and clear" operation instead of
the usual "test and set". */
-#define __ATOMIC_LOCK_INIT 0
+#define __LT_SPINLOCK_INIT 0
/* Macros for lock initializers, using the above definition. */
-#define __LOCK_INITIALIZER { 0, 0 }
-#define __ATOMIC_INITIALIZER { 0, 0 }
+#define __LOCK_INITIALIZER { 0, __LT_SPINLOCK_INIT }
+#define __ALT_LOCK_INITIALIZER { 0, __LT_SPINLOCK_INIT }
+#define __ATOMIC_INITIALIZER { 0, __LT_SPINLOCK_INIT }
Index: pthreadtypes.h
===================================================================
RCS file: /var/cvs/uClibc/libc/sysdeps/linux/common/bits/pthreadtypes.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- pthreadtypes.h 1 Mar 2002 20:46:02 -0000 1.1
+++ pthreadtypes.h 27 Feb 2003 18:13:05 -0000 1.2
@@ -22,13 +22,11 @@
#define __need_schedparam
#include <bits/sched.h>
-typedef int __atomic_lock_t;
-
/* Fast locks (not abstract because mutexes and conditions aren't abstract). */
struct _pthread_fastlock
{
long int __status; /* "Free" or "taken" or head of waiting list */
- __atomic_lock_t __spinlock; /* Used by compare_and_swap emulation. Also,
+ int __spinlock; /* Used by compare_and_swap emulation. Also,
adaptive SMP lock stores spin count here. */
};
More information about the uClibc-cvs
mailing list