aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2002-12-17 03:49:23 +0000
committerUlrich Drepper <drepper@redhat.com>2002-12-17 03:49:23 +0000
commit26a026b94036e2e2a41a6693327d796cc82bdacd (patch)
tree4fcca570ad63971bc785942611defe63756471d5
parentbd499a3b46304d4900a6a6ba809f9b7f2c5a4afa (diff)
downloadglibc-26a026b94036e2e2a41a6693327d796cc82bdacd.zip
glibc-26a026b94036e2e2a41a6693327d796cc82bdacd.tar.gz
glibc-26a026b94036e2e2a41a6693327d796cc82bdacd.tar.bz2
Update.
2002-12-16 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/i386/socket.S [NEED_CANCELLATION && CENABLE]: Don't lose content of %ebx.
-rw-r--r--ChangeLog5
-rw-r--r--sysdeps/unix/sysv/linux/i386/socket.S4
2 files changed, 8 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 75ca2b6..acf7205 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -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. */