aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--NEWS2
-rw-r--r--nptl/ChangeLog8
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S6
3 files changed, 12 insertions, 4 deletions
diff --git a/NEWS b/NEWS
index 73ab2b9e87..75d9706754 100644
--- a/NEWS
+++ b/NEWS
@@ -12,7 +12,7 @@ Version 2.15
6779, 6783, 9696, 10709, 11589, 12403, 12847, 12868, 12852, 12874, 12885,
12892, 12907, 12922, 12935, 13007, 13021, 13067, 13068, 13090, 13092,
13114, 13118, 13123, 13134, 13138, 13150, 13179, 13192, 13268, 13291,
- 13335, 13337, 13344
+ 13335, 13337, 13344, 13358
* New program pldd to list loaded object of a process
Implemented by Ulrich Drepper.
diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index 6b483d6c74..1c084f7e3c 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,3 +1,11 @@
+2011-10-29 Ulrich Drepper <drepper@gmail.com>
+
+ [BZ #13358]
+ * sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
+ (__pthread_cond_timedwait): Initialize %r15 correctly also for code
+ path for kernels with FUTEX_CLOCK_REALTIME.
+ Debugged by H.J. Lu <hjl.tools@gmail.com>.
+
2011-10-27 Andreas Schwab <schwab@redhat.com>
[BZ #13344]
diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
index d11b29746a..acbd3fa533 100644
--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
+++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002-2005, 2007, 2009, 2010, 2011 Free Software Foundation, Inc.
+/* Copyright (C) 2002-2005,2007,2009,2010,2011 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
@@ -101,6 +101,8 @@ __pthread_cond_timedwait:
movq %rsi, dep_mutex(%rdi)
22:
+ xorl %r15d, %r15d
+
#ifndef __ASSUME_FUTEX_CLOCK_REALTIME
# ifdef PIC
cmpl $0, __have_futex_clock_realtime(%rip)
@@ -402,8 +404,6 @@ __pthread_cond_timedwait:
#ifndef __ASSUME_FUTEX_CLOCK_REALTIME
.Lreltmo:
- xorl %r15d, %r15d
-
/* Get internal lock. */
movl $1, %esi
xorl %eax, %eax