8.1.0-rc1 Regression: donkey in qemu advent calender 03/2020 has graphical artifacts
Host environment
- Operating system: Debian Linux 12
- OS/kernel version: Linux rodrigo 6.1.0-10-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.38-1 (2023-07-14) x86_64 GNU/Linux
- Architecture: x86_64
- QEMU flavor: qemu-system-i386
- QEMU version: 8.1.0-rc1 (commit 59213461)
- QEMU command line:
qemu-system-i386 -m 16M -drive if=ide,format=qcow2,file=gwbasic.qcow2
Emulated/Virtualized environment
- Operating system: FreeDos
- OS/kernel version: FreeDos
- Architecture: x86
Description of problem
The game donkey shows graphical artifacts on playing. On changing the lane the car remains on its previous land as well. A git bisect identified commit 59213461 as culprit
Steps to reproduce
- Download http://qemu-advent-calendar.org/2020/download/gw-basic.tar.xz
- Start VM using command
qemu-system-i386 -m 16M -drive if=ide,format=qcow2,file=gwbasic.qcow2
- Wait for GW-Basic prompt and enter (see README): F3 - donkey - - F2
- Play to see graphical artifacts
Additional information
$ git bisect bad
592134617c98f37b8b39c6dd684e5a1832c071d2 is the first bad commit
commit 592134617c98f37b8b39c6dd684e5a1832c071d2
Author: Richard Henderson
Date: Sun Oct 30 12:07:32 2022 +1100
accel/tcg: Reorg system mode store helpers
Instead of trying to unify all operations on uint64_t, use
mmu_lookup() to perform the basic tlb hit and resolution.
Create individual functions to handle access by size.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
accel/tcg/cputlb.c | 394 +++++++++++++++++++++++++----------------------------
1 file changed, 186 insertions(+), 208 deletions(-)