diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/i386/socket.S | 4 |
2 files changed, 8 insertions, 1 deletions
@@ -1,3 +1,8 @@ +2002-12-16 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/i386/socket.S [NEED_CANCELLATION && + CENABLE]: Don't lose content of %ebx. + 2002-12-17 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/i386/socket.S: Use SINGLE_THREAD_P diff --git a/sysdeps/unix/sysv/linux/i386/socket.S b/sysdeps/unix/sysv/linux/i386/socket.S index 52d3aa9..53f1be6 100644 --- a/sysdeps/unix/sysv/linux/i386/socket.S +++ b/sysdeps/unix/sysv/linux/i386/socket.S @@ -91,13 +91,15 @@ L(pseudo_end): /* Do the system call trap. */ int $0x80 + /* Restore registers. */ + movl %edx, %ebx + /* Restore the cancellation. */ xchgl %esi, %eax CDISABLE /* Restore registers. */ movl %esi, %eax - movl %edx, %ebx popl %esi /* %eax is < 0 if there was an error. */ |