Game: Descenders (appid 681280) — Unity 2017.4.40f1, Windows depot
Regression: works on Proton 9.0 and 10.0, crashes on Proton 11
Tested: 11.0-2c and experimental-11.0-20260903b — both crash
OS/GPU: SteamOS 3.8.26 (beta), Game Mode, Mesa RADV, NAVI33
Symptom
Intermittent crash a few seconds after the window appears, during the boot logo
videos. Roughly 5 of 7 launches on Proton 11; never observed on 9 or 10.
MFReadWrite.dll caused an Access Violation (0xc0000005)
Read from location ffffffff caused an access violation.
Fault
--- Exception 0xc0000005 addr=MFReadWrite.dll+0x8553
info[0]=0000000000000000
info[1]=FFFFFFFFFFFFFFFF
backtrace:
MFReadWrite.dll + 0x8553
MFReadWrite.dll + 0x9622
rtworkq.dll + 0x3580
rtworkq.dll + 0x5957
ntdll.dll + 0x6D7AD
ntdll.dll + 0x6C668
kernel32.dll + 0x11649
ntdll.dll + 0x10E0F
Trace
A second MP4 media source is created ~15 ms before the crash, while the first
source reader is still draining stream events on an rtworkq worker thread:
mfplat:presentation_descriptor_SetString ..., MF_PD_MIME_TYPE, L"video/mp4" <- source #2
...
wg_transform_read_data: Cannot read 3110400 bytes, no output available
...
mfplat:source_reader_stream_events_callback_Invoke ... stream A
mfplat:media_stream_Release stream A, refcount 1
mfplat:source_reader_stream_events_callback_Invoke ... stream B
mfplat:media_stream_Release stream B, refcount 1
--- Exception 0xc0000005
3110400 = 192010801.5, one 1080p frame. The decoder had no output available,
and the source reader then reads through a -1 pointer dispatching a stream event.
Notes on cause
- Not the video content: replacing the boot videos with a synthetic 1 s black
clip (H.264 Main, 1080p, 30 fps, silent AAC) reproduces it identically.
- Not winedmo: Proton 10 ships winedmo and does not crash.
- The visible difference is ntsync, new in Proton 11 (this title logs
ntsync: up and running on 11; Proton 10 titles log fsync). PROTON_NO_FSYNC=1
does not help on 11, as expected — it does not affect ntsync, and there appears
to be no ntsync opt-out to test against.
- Timing-sensitive: with heavy
WINEDEBUG tracing enabled the crash sometimes
does not occur, consistent with a race.
Corroboration
A ProtonDB report from ~5 months ago on proton-cachyos describes the same thing:
"Sometimes, game would crash on startup. Goes away after second launch."
Workaround
Force Proton 10 (or 9).
Full PROTON_LOG available on request.
Game: Descenders (appid 681280) — Unity 2017.4.40f1, Windows depot
Regression: works on Proton 9.0 and 10.0, crashes on Proton 11
Tested: 11.0-2c and experimental-11.0-20260903b — both crash
OS/GPU: SteamOS 3.8.26 (beta), Game Mode, Mesa RADV, NAVI33
Symptom
Intermittent crash a few seconds after the window appears, during the boot logo
videos. Roughly 5 of 7 launches on Proton 11; never observed on 9 or 10.
Fault
Trace
A second MP4 media source is created ~15 ms before the crash, while the first
source reader is still draining stream events on an rtworkq worker thread:
3110400 = 192010801.5, one 1080p frame. The decoder had no output available,
and the source reader then reads through a -1 pointer dispatching a stream event.
Notes on cause
clip (H.264 Main, 1080p, 30 fps, silent AAC) reproduces it identically.
ntsync: up and runningon 11; Proton 10 titles logfsync).PROTON_NO_FSYNC=1does not help on 11, as expected — it does not affect ntsync, and there appears
to be no ntsync opt-out to test against.
WINEDEBUGtracing enabled the crash sometimesdoes not occur, consistent with a race.
Corroboration
A ProtonDB report from ~5 months ago on proton-cachyos describes the same thing:
"Sometimes, game would crash on startup. Goes away after second launch."
Workaround
Force Proton 10 (or 9).
Full PROTON_LOG available on request.