From cdffaaa61555d4b1b102b1a86be7f257be405ed6 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sun, 11 May 2008 05:42:25 +0000 Subject: [PATCH] * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S: Access __pshared correctly. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_unlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S: Likewise. Reported by Clemens Kolbitsch . --- nptl/ChangeLog | 14 ++++++++++++++ .../unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S | 8 ++++---- .../unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S | 8 ++++---- .../unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S | 8 ++++---- .../unix/sysv/linux/i386/i486/pthread_rwlock_unlock.S | 6 +++--- .../unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S | 8 ++++---- 6 files changed, 33 insertions(+), 19 deletions(-) diff --git a/nptl/ChangeLog b/nptl/ChangeLog index a1cb40c..0bbdd6e 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,17 @@ +2008-05-10 Ulrich Drepper + + * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S: Access + __pshared correctly. + * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S: + Likewise. + * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S: + Likewise. + * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_unlock.S: + Likewise. + * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S: + Likewise. + Reported by Clemens Kolbitsch . + 2008-04-14 David S. Miller * sysdeps/unix/sysv/linux/sparc/sparc32/sem_wait.c diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S index d8f1bd5..2ddeed0 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S @@ -122,7 +122,7 @@ __pthread_rwlock_rdlock: #else leal MUTEX(%ebx), %edx #endif - movl PSHARED(%ebx), %ecx + movzbl PSHARED(%ebx), %ecx call __lll_lock_wait jmp 2b @@ -138,7 +138,7 @@ __pthread_rwlock_rdlock: #else leal MUTEX(%ebx), %eax #endif - movl PSHARED(%ebx), %ecx + movzbl PSHARED(%ebx), %ecx call __lll_unlock_wake jmp 7b @@ -158,7 +158,7 @@ __pthread_rwlock_rdlock: #else leal MUTEX(%ebx), %eax #endif - movl PSHARED(%ebx), %ecx + movzbl PSHARED(%ebx), %ecx call __lll_unlock_wake jmp 11b @@ -168,7 +168,7 @@ __pthread_rwlock_rdlock: #else leal MUTEX(%ebx), %edx #endif - movl PSHARED(%ebx), %ecx + movzbl PSHARED(%ebx), %ecx call __lll_lock_wait jmp 13b .size __pthread_rwlock_rdlock,.-__pthread_rwlock_rdlock diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S index 0d96e03..8902728 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S @@ -162,7 +162,7 @@ pthread_rwlock_timedrdlock: #else leal MUTEX(%ebp), %edx #endif - movl PSHARED(%ebp), %ecx + movzbl PSHARED(%ebp), %ecx call __lll_lock_wait jmp 2b @@ -177,7 +177,7 @@ pthread_rwlock_timedrdlock: #else leal MUTEX(%ebp), %eax #endif - movl PSHARED(%ebp), %ecx + movzbl PSHARED(%ebp), %ecx call __lll_unlock_wake jmp 7b @@ -197,7 +197,7 @@ pthread_rwlock_timedrdlock: #else leal MUTEX(%ebp), %eax #endif - movl PSHARED(%ebp), %ecx + movzbl PSHARED(%ebp), %ecx call __lll_unlock_wake jmp 11b @@ -207,7 +207,7 @@ pthread_rwlock_timedrdlock: #else leal MUTEX(%ebp), %edx #endif - movl PSHARED(%ebp), %ecx + movzbl PSHARED(%ebp), %ecx call __lll_lock_wait jmp 13b diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S index e78fdf6..0cf02e0 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S @@ -160,7 +160,7 @@ pthread_rwlock_timedwrlock: #else leal MUTEX(%ebp), %edx #endif - movl PSHARED(%ebp), %ecx + movzbl PSHARED(%ebp), %ecx call __lll_lock_wait jmp 2b @@ -175,7 +175,7 @@ pthread_rwlock_timedwrlock: #else leal MUTEX(%ebp), %eax #endif - movl PSHARED(%ebp), %ecx + movzbl PSHARED(%ebp), %ecx call __lll_unlock_wake jmp 7b @@ -190,7 +190,7 @@ pthread_rwlock_timedwrlock: #else leal MUTEX(%ebp), %eax #endif - movl PSHARED(%ebp), %ecx + movzbl PSHARED(%ebp), %ecx call __lll_unlock_wake jmp 11b @@ -200,7 +200,7 @@ pthread_rwlock_timedwrlock: #else leal MUTEX(%ebp), %edx #endif - movl PSHARED(%ebp), %ecx + movzbl PSHARED(%ebp), %ecx call __lll_lock_wait jmp 13b diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_unlock.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_unlock.S index a23e1b5..bf9c33e 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_unlock.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_unlock.S @@ -110,7 +110,7 @@ __pthread_rwlock_unlock: #else leal MUTEX(%edi), %edx #endif - movl PSHARED(%edi), %ecx + movzbl PSHARED(%edi), %ecx call __lll_lock_wait jmp 2b @@ -120,7 +120,7 @@ __pthread_rwlock_unlock: #else leal MUTEX(%edi), %eax #endif - movl PSHARED(%edi), %ecx + movzbl PSHARED(%edi), %ecx call __lll_unlock_wake jmp 4b @@ -130,7 +130,7 @@ __pthread_rwlock_unlock: #else leal MUTEX(%edi), %eax #endif - movl PSHARED(%edi), %ecx + movzbl PSHARED(%edi), %ecx call __lll_unlock_wake jmp 8b diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S index 65b99fe..d13bb51 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S @@ -120,7 +120,7 @@ __pthread_rwlock_wrlock: #else leal MUTEX(%ebx), %edx #endif - movl PSHARED(%ebx), %ecx + movzbl PSHARED(%ebx), %ecx call __lll_lock_wait jmp 2b @@ -135,7 +135,7 @@ __pthread_rwlock_wrlock: #else leal MUTEX(%ebx), %eax #endif - movl PSHARED(%ebx), %ecx + movzbl PSHARED(%ebx), %ecx call __lll_unlock_wake jmp 7b @@ -149,7 +149,7 @@ __pthread_rwlock_wrlock: #else leal MUTEX(%ebx), %eax #endif - movl PSHARED(%ebx), %ecx + movzbl PSHARED(%ebx), %ecx call __lll_unlock_wake jmp 11b @@ -159,7 +159,7 @@ __pthread_rwlock_wrlock: #else leal MUTEX(%ebx), %edx #endif - movl PSHARED(%ebx), %ecx + movzbl PSHARED(%ebx), %ecx call __lll_lock_wait jmp 13b .size __pthread_rwlock_wrlock,.-__pthread_rwlock_wrlock -- 2.7.4