Public bug reported: qemu-user seems to incorrectly mmap a file if the offset is > 4GiB and guest binary is 32 bits elf.
See attached test program `test_mmap.c`. ``` $ gcc -g -m32 -march=i386 test_mmap.c -o test_mmap $ file test_mmap test_mmap: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=e36db05f4dfd8a9cfde8a969214a242c1f5a4b49, with debug_info, not stripped $ uname -a Linux localhost.localdomain 4.15.10-300.fc27.x86_64 #1 SMP Thu Mar 15 17:13:04 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux $ qemu-i386 --version qemu-i386 version 2.10.1(qemu-2.10.1-2.fc27) Copyright (c) 2003-2017 Fabrice Bellard and the QEMU Project developers $ ./test_mmap $ qemu-i386 test_mmap Incorrect data 1 ``` Tested with qemu-i386 packaged in Fedora 27 and qemu-i386 compiled from git master (094b62cd9c) The issue was firstly detected on (more complex program) using qemu-arm (with 32bits binary) so it is probably a 32/64bits problem independently of the cpu family. ** Affects: qemu Importance: Undecided Status: New ** Attachment added: "test_mmap.c" https://bugs.launchpad.net/bugs/1761153/+attachment/5101253/+files/test_mmap.c -- You received this bug notification because you are a member of qemu- devel-ml, which is subscribed to QEMU. https://bugs.launchpad.net/bugs/1761153 Title: qemu-user incorrect mmap for large files on 64bits host and 32bits executable. Status in QEMU: New Bug description: qemu-user seems to incorrectly mmap a file if the offset is > 4GiB and guest binary is 32 bits elf. See attached test program `test_mmap.c`. ``` $ gcc -g -m32 -march=i386 test_mmap.c -o test_mmap $ file test_mmap test_mmap: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=e36db05f4dfd8a9cfde8a969214a242c1f5a4b49, with debug_info, not stripped $ uname -a Linux localhost.localdomain 4.15.10-300.fc27.x86_64 #1 SMP Thu Mar 15 17:13:04 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux $ qemu-i386 --version qemu-i386 version 2.10.1(qemu-2.10.1-2.fc27) Copyright (c) 2003-2017 Fabrice Bellard and the QEMU Project developers $ ./test_mmap $ qemu-i386 test_mmap Incorrect data 1 ``` Tested with qemu-i386 packaged in Fedora 27 and qemu-i386 compiled from git master (094b62cd9c) The issue was firstly detected on (more complex program) using qemu- arm (with 32bits binary) so it is probably a 32/64bits problem independently of the cpu family. To manage notifications about this bug go to: https://bugs.launchpad.net/qemu/+bug/1761153/+subscriptions