Moved from WizzardSK/pcee2-libretro#30, where it was filed against the wrong core. Reported by @Bernstein94; the log there loads pcsx2_libretro_android.so and writes saves under RetroArch/saves/LRPS2/, so it belongs here.
Symptom
God of War (USA) boots and then crashes shortly after. The reporter also mentions GTA Vice City booting with uneven audio, which may or may not be the same underlying cause.
Environment
- RetroArch 1.22.2, Android 16, arm64-v8a, sideload
- Xiaomi 23113RKC6C, Adreno 740
- Vulkan display driver, OpenSL audio
- God of War (USA),
SCUS-97399, ELF CRC D6385328
- Fastmem enabled; GameDB applied alignSprite, roundSprite and autoFlush
What the log shows
retroarch.log from the original report.
Nothing about the crash itself. The log stops mid-sentence in the middle of repeated
microVU1: 2 cycle stall on branch instruction [03b0]
microVU1: 1 cycle stall on branch instruction [0538]
microVU1: 3 cycle stall on branch instruction [0588]
which is what a hard native crash looks like from RetroArch’s side: RetroArch cannot log a signal that kills the process, and until #158 the core installed no reporter of its own — the only sigaction in the tree is the fastmem page fault filter. So there is no fault address and no program counter to work from yet.
What can be said is that the last thing the core did before dying was microVU1 compiling VU1 programs.
Next steps
Waiting on the reporter for adb logcat or a tombstone, and for the result of three core option changes, each of which rules something in or out:
- MTVU off. On arm64 this defaults to on whenever the native VU1 recompiler drives VU1. First suspect, and the most likely explanation for the Vice City audio too.
- VU1 softfloat on. Takes the VU1 recompiler out of the picture; if the game then boots, this is VU1 codegen.
- EE = Interpreter. Removes the EE recompiler entirely; a crash that survives it is not EE codegen.
#158 adds a crash handler that will answer the main question directly on the next report — whether the program counter was inside the core’s own text or inside generated code.
Moved from WizzardSK/pcee2-libretro#30, where it was filed against the wrong core. Reported by @Bernstein94; the log there loads
pcsx2_libretro_android.soand writes saves underRetroArch/saves/LRPS2/, so it belongs here.Symptom
God of War (USA) boots and then crashes shortly after. The reporter also mentions GTA Vice City booting with uneven audio, which may or may not be the same underlying cause.
Environment
SCUS-97399, ELF CRCD6385328What the log shows
retroarch.log from the original report.
Nothing about the crash itself. The log stops mid-sentence in the middle of repeated
which is what a hard native crash looks like from RetroArch’s side: RetroArch cannot log a signal that kills the process, and until #158 the core installed no reporter of its own — the only
sigactionin the tree is the fastmem page fault filter. So there is no fault address and no program counter to work from yet.What can be said is that the last thing the core did before dying was microVU1 compiling VU1 programs.
Next steps
Waiting on the reporter for
adb logcator a tombstone, and for the result of three core option changes, each of which rules something in or out:#158 adds a crash handler that will answer the main question directly on the next report — whether the program counter was inside the core’s own text or inside generated code.