aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/unix/sysv/linux')
-rw-r--r--sysdeps/unix/sysv/linux/i386/Versions3
-rw-r--r--sysdeps/unix/sysv/linux/i386/i686/sysdep.h4
-rw-r--r--sysdeps/unix/sysv/linux/i386/syscalls.list1
-rw-r--r--sysdeps/unix/sysv/linux/i386/sysdep.h4
4 files changed, 8 insertions, 4 deletions
diff --git a/sysdeps/unix/sysv/linux/i386/Versions b/sysdeps/unix/sysv/linux/i386/Versions
index 1ec868a57c..87b0167a15 100644
--- a/sysdeps/unix/sysv/linux/i386/Versions
+++ b/sysdeps/unix/sysv/linux/i386/Versions
@@ -4,4 +4,7 @@ libc {
vm86;
}
+ GLIBC_2.1 {
+ __modify_ldt; modify_ldt;
+ }
}
diff --git a/sysdeps/unix/sysv/linux/i386/i686/sysdep.h b/sysdeps/unix/sysv/linux/i386/i686/sysdep.h
index 3f1391f8a4..4a4ee9361b 100644
--- a/sysdeps/unix/sysv/linux/i386/i686/sysdep.h
+++ b/sysdeps/unix/sysv/linux/i386/i686/sysdep.h
@@ -43,7 +43,7 @@
popl %ecx; \
popl %ebx; \
movl %ecx, (%eax); \
- movl $-1, %eax; \
+ orl $-1, %eax; \
jmp L(pseudo_end);
/* A quick note: it is assumed that the call to `__errno_location' does
not modify the stack! */
@@ -58,7 +58,7 @@
subl %eax, %edx; \
movl errno@GOT(%ecx), %ecx; \
movl %edx, (%ecx); \
- movl $-1, %eax; \
+ orl $-1, %eax; \
jmp L(pseudo_end);
# endif /* _LIBC_REENTRANT */
#endif /* PIC */
diff --git a/sysdeps/unix/sysv/linux/i386/syscalls.list b/sysdeps/unix/sysv/linux/i386/syscalls.list
index a66ccc0a12..2c167b9bdd 100644
--- a/sysdeps/unix/sysv/linux/i386/syscalls.list
+++ b/sysdeps/unix/sysv/linux/i386/syscalls.list
@@ -1,5 +1,6 @@
# File name Caller Syscall name # args Strong name Weak names
+modify_ldt EXTRA modify_ldt 3 __modify_ldt modify_ldt
s_chown chown chown 3 __syscall_chown
s_getgroups getgroups getgroups 2 __syscall_getgroups
s_llseek llseek _llseek 5 __sys_llseek
diff --git a/sysdeps/unix/sysv/linux/i386/sysdep.h b/sysdeps/unix/sysv/linux/i386/sysdep.h
index 8c046efed7..f9c70f410f 100644
--- a/sysdeps/unix/sysv/linux/i386/sysdep.h
+++ b/sysdeps/unix/sysv/linux/i386/sysdep.h
@@ -86,7 +86,7 @@
popl %ecx; \
popl %ebx; \
movl %ecx, (%eax); \
- movl $-1, %eax; \
+ orl $-1, %eax; \
jmp L(pseudo_end);
/* A quick note: it is assumed that the call to `__errno_location' does
not modify the stack! */
@@ -99,7 +99,7 @@
subl %eax, %edx; \
movl errno@GOT(%ecx), %ecx; \
movl %edx, (%ecx); \
- movl $-1, %eax; \
+ orl $-1, %eax; \
jmp L(pseudo_end);
#endif /* _LIBC_REENTRANT */
#endif /* PIC */