semantic: 0.765 user-level: 0.723 ppc: 0.717 arm: 0.686 PID: 0.679 kernel: 0.675 permissions: 0.661 VMM: 0.659 debug: 0.644 peripherals: 0.641 mistranslation: 0.638 assembly: 0.637 register: 0.630 architecture: 0.601 device: 0.601 graphic: 0.594 boot: 0.593 risc-v: 0.588 vnc: 0.568 virtual: 0.562 TCG: 0.557 hypervisor: 0.528 socket: 0.516 files: 0.498 performance: 0.483 network: 0.451 i386: 0.441 KVM: 0.409 x86: 0.359 QEMU crash after a QuickBASIC program integer overflow A trivial program compiler with QuickBASIC 4.5 with integer overflow will crash QEMU when ran under MS-DOS 5.0 or FreeDOS 1.2: C:\KILLER>type killer.bas A% = VAL("99999"):PRINT A% C:\KILLER>killer.exe ** ERROR:../qemu-5.2.0/accel/tcg/tcg-cpus.c:541:tcg_handle_interrupt: assertion failed: (qemu_mutex_iothread_locked()) Aborted QEMU version v5.2, compiler for ARM, and started with command line: qemu-system-i386 -curses -cpu 486 -m 1 -drive dos.img The same test under Ubuntu QEMU and KVM/x86_64 (QEMU emulator version 4.2.1 (Debian 1:4.2-3ubuntu6.14)) will just silently hang the QEMU. On DOSBOX, the machine does not die and program outputs the value -31073. The EXE to reproduce the issue is attached. The program works (in TCQ mode) with QEMU v5.0.0. QEMU starts crashing with the commit: commit 975af797f1e04e4d1b1a12f1731141d3770fdbce Author: Joseph Myers