mirror of
git://sourceware.org/git/glibc.git
synced 2025-03-06 20:58:33 +01:00
* sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S (sem_timedwait):
Move __pthread_enable_asynccancel right before futex syscall. * sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S (sem_timedwait): Likewise. 2007-05-25 Ulrich Drepper <drepper@redhat.com> Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S (sem_timedwait): Move __pthread_enable_asynccancel right before futex syscall. * sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S (sem_timedwait): Likewise. 2007-05-24 Jakub Jelinek <jakub@redhat.com>
This commit is contained in:
parent
47ad95ab96
commit
20a4d7228e
3 changed files with 19 additions and 10 deletions
|
@ -1,4 +1,12 @@
|
|||
2007-04-24 Jakub Jelinek <jakub@redhat.com>
|
||||
2007-05-25 Ulrich Drepper <drepper@redhat.com>
|
||||
Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S (sem_timedwait):
|
||||
Move __pthread_enable_asynccancel right before futex syscall.
|
||||
* sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S (sem_timedwait):
|
||||
Likewise.
|
||||
|
||||
2007-05-24 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* sysdeps/i386/tls.h (THREAD_SET_PRIVATE_FUTEX,
|
||||
THREAD_COPY_PRIVATE_FUTEX): Define.
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
|
@ -79,10 +79,7 @@ sem_timedwait:
|
|||
jae 6f
|
||||
|
||||
cfi_offset(3, -16) /* %ebx */
|
||||
7: call __pthread_enable_asynccancel
|
||||
movl %eax, 8(%esp)
|
||||
|
||||
xorl %ecx, %ecx
|
||||
7: xorl %ecx, %ecx
|
||||
movl %esp, %ebx
|
||||
movl %ecx, %edx
|
||||
movl $SYS_gettimeofday, %eax
|
||||
|
@ -105,6 +102,10 @@ sem_timedwait:
|
|||
|
||||
movl %ecx, (%esp) /* Store relative timeout. */
|
||||
movl %edx, 4(%esp)
|
||||
|
||||
call __pthread_enable_asynccancel
|
||||
movl %eax, 8(%esp)
|
||||
|
||||
movl 28(%esp), %ebx
|
||||
xorl %ecx, %ecx
|
||||
movl %esp, %esi
|
||||
|
|
|
@ -73,10 +73,7 @@ sem_timedwait:
|
|||
cfi_offset(14, -24) /* %r14 */
|
||||
jae 6f
|
||||
|
||||
7: call __pthread_enable_asynccancel
|
||||
movl %eax, 16(%rsp)
|
||||
|
||||
xorl %esi, %esi
|
||||
7: xorl %esi, %esi
|
||||
movq %rsp, %rdi
|
||||
movq $VSYSCALL_ADDR_vgettimeofday, %rax
|
||||
callq *%rax
|
||||
|
@ -99,6 +96,9 @@ sem_timedwait:
|
|||
movq %rdi, (%rsp) /* Store relative timeout. */
|
||||
movq %rsi, 8(%rsp)
|
||||
|
||||
call __pthread_enable_asynccancel
|
||||
movl %eax, 16(%rsp)
|
||||
|
||||
movq %rsp, %r10
|
||||
movq %r12, %rdi
|
||||
xorl %esi, %esi
|
||||
|
|
Loading…
Add table
Reference in a new issue