8.0.0: Crash when emulating MIPS executable
Host environment
- Operating system: Ubuntu 20.04.6 LTS
- OS/kernel version: 5.15.0-69-generic #76~20.04.1-Ubuntu
- Architecture: x86_64
- QEMU flavor: qemu-mips64el
- QEMU version: 8.0.0 (any version starting from 6.0.0)
- QEMU command line: qemu-mips64el -cpu I6400 core_test.m64f32Lr6
Description of problem
A change to QEMU introduced within the 6.0.0 development cycle causes MIPS executable to crash. Similar problem occurred within the same time-frame for Aarch64 executables, but was fixed. Patches in QEMU causing both Aarch64 and MIPS occurrences are identified and attached below.
Steps to reproduce
- Download attached core_test.zip archive.
- Run pre-built MIPS executable with QEMU.
- Observe the crash somewhere in tdelete.
- Source for the test is here: https://github.com/VectorChief/QuadRay-engine
- The binaries were built with GCC 9.4 cross-compilers using slightly modified makefiles (-ggdb3) for gdb-multiarch
- Building on Ubuntu 22.04 and Ubuntu 23.04 also reproduces the problem, so it's not OS or compiler specific.
Additional information
Archive with pre-built binaries: core_test.zip
Patch breaking Aarch64: qemu_arm_br.diff commit 8fe35e04
Patch fixing Aarch64: qemu_arm_fix.diff commit ae30e866
Patch breaking MIPS: qemu_mips_br.diff commit 96e5b4c7