about summary refs log tree commit diff
path: root/linuxthreads
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-07-18 17:20:58 +0000
committerUlrich Drepper <drepper@redhat.com>2000-07-18 17:20:58 +0000
commit83142e8fe1f329cb2636a851132e9d1eb28a23c3 (patch)
tree2d91f626d052c93cdb229f1c8365525e3effaccb /linuxthreads
parente6574c9ca263afb7d408dd5ebf09ad8cb0178469 (diff)
downloadglibc-83142e8fe1f329cb2636a851132e9d1eb28a23c3.tar.gz
glibc-83142e8fe1f329cb2636a851132e9d1eb28a23c3.tar.xz
glibc-83142e8fe1f329cb2636a851132e9d1eb28a23c3.zip
Update.
2000-07-18  Ulrich Drepper  <drepper@redhat.com>

	* include/libc-symbols.h: Define RETURN_ADDRESS macro.
	* dlfcn/dlopen.c: Use RETURN_ADDRESS instead of
	__builtin_return_address.
	* dlfcn/dlopenold.c: Likewise.
	* dlfcn/dlsym.c: Likewise.
	* dlfcn/dlvsym.c: Likewise.
	* elf/dl-profstub.c: Likewise.
	* malloc/malloc.c: Likewise.
	* sysdeps/generic/machine-gmon.h: Likewise.
	Based on a patch by schwidefsky@de.ibm.com.
Diffstat (limited to 'linuxthreads')
-rw-r--r--linuxthreads/ChangeLog6
-rw-r--r--linuxthreads/spinlock.c6
2 files changed, 8 insertions, 4 deletions
diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog
index fe1a4ed2e0..62567dad4d 100644
--- a/linuxthreads/ChangeLog
+++ b/linuxthreads/ChangeLog
@@ -1,3 +1,9 @@
+2000-07-18  Kaz Kylheku  <kaz@ashi.footprints.net>
+
+	* spinlock.c (__pthread_alt_lock, __pthread_alt_timedlock): Changed
+	__compare_and_swap to compare_and_swap in code which assumes
+	compare swap is available.
+
 2000-07-18 Kaz Kylheku <kaz@ashi.footprints.net>
 
 	* spinlock.c (__pthread_alt_lock, __pthread_alt_timedlock): Fixed
diff --git a/linuxthreads/spinlock.c b/linuxthreads/spinlock.c
index 43190a2eda..4ed4203970 100644
--- a/linuxthreads/spinlock.c
+++ b/linuxthreads/spinlock.c
@@ -417,8 +417,7 @@ void __pthread_alt_lock(struct _pthread_fastlock * lock,
     /* Make sure the store in wait_node.next completes before performing
        the compare-and-swap */
     MEMORY_BARRIER();
-  } while(! compare_and_swap(&lock->__status, oldstatus, newstatus,
-                             &lock->__spinlock));
+  } while(! __compare_and_swap(&lock->__status, oldstatus, newstatus));
 
   /* Suspend. Note that unlike in __pthread_lock, we don't worry
      here about spurious wakeup. That's because this lock is not
@@ -487,8 +486,7 @@ int __pthread_alt_timedlock(struct _pthread_fastlock * lock,
     /* Make sure the store in wait_node.next completes before performing
        the compare-and-swap */
     MEMORY_BARRIER();
-  } while(! compare_and_swap(&lock->__status, oldstatus, newstatus,
-                             &lock->__spinlock));
+  } while(! __compare_and_swap(&lock->__status, oldstatus, newstatus));
 #endif
 
 #if !defined HAS_COMPARE_AND_SWAP || defined TEST_FOR_COMPARE_AND_SWAP