aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--sysdeps/unix/sysv/linux/i386/mmap.S2
-rw-r--r--sysdeps/unix/sysv/linux/i386/mmap64.S2
3 files changed, 6 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 3267ddb64d..372c3cb218 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
2000-08-25 Ulrich Drepper <drepper@redhat.com>
+ * sysdeps/unix/sysv/linux/i386/mmap.S (__mmap): Return -EINVAL
+ even if bits 10 a 11 are non-zero.
+ * sysdeps/unix/sysv/linux/i386/mmap64.S (__mmap64): Likewise.
+
* Makeconfig: Ensures the soversions.mk part of Makefile gets
included before building gnu/lib-names.h
Patch by Maciej W. Rozycki <macro@ds2.pg.gda.pl>.
diff --git a/sysdeps/unix/sysv/linux/i386/mmap.S b/sysdeps/unix/sysv/linux/i386/mmap.S
index 46d26125a5..8010b53f84 100644
--- a/sysdeps/unix/sysv/linux/i386/mmap.S
+++ b/sysdeps/unix/sysv/linux/i386/mmap.S
@@ -42,7 +42,7 @@ ENTRY (__mmap)
movl 32(%esp), %esi
movl 36(%esp), %edi
movl 40(%esp), %ebp
- testl $0x3ff, %ebp
+ testl $0xfff, %ebp
movl $-EINVAL, %eax
jne L(skip)
shrl $12, %ebp /* mmap2 takes the offset in pages. */
diff --git a/sysdeps/unix/sysv/linux/i386/mmap64.S b/sysdeps/unix/sysv/linux/i386/mmap64.S
index 349d3501c6..c2a2955eda 100644
--- a/sysdeps/unix/sysv/linux/i386/mmap64.S
+++ b/sysdeps/unix/sysv/linux/i386/mmap64.S
@@ -48,7 +48,7 @@ ENTRY (BP_SYM (__mmap64))
movl OFFLO(%esp), %edx
movl OFFHI(%esp), %ecx
- testl $0x3ff, %edx
+ testl $0xfff, %edx
jne L(einval)
shrdl $12, %ecx, %edx /* mmap2 takes the offset in pages. */
shrl $12, %ecx