protonscr

ARC Raiders: reproducible SIGSEGV in ntdll.so setup_raise_exception with invalid rsp

protonclosed appid 1808500
ValveSoftware/Proton#10201 · opened 2026-09-30 by dec0y1 · updated 2026-09-30 · 2 comments · github · game page · search this game
Ddec0y1 2026-09-30 github

Compatibility Report

  • Name of the game with compatibility issues: ARC Raiders
  • Steam AppID of the game: 1808500

System Information

  • GPU: AMD Radeon RX 9060 XT 16GB (RDNA 4, gfx1200, PCI 1002:7590)
  • Video driver version: Mesa 25.2.8-0ubuntu0.24.04.2 (RADV)
  • Kernel version: 7.0.0-38-generic
  • Link to full system information report as Gist
  • Proton version: experimental-11.0-20260924 AND hotfix-20260828-ptr — both crash identically

I confirm:

  • [x] that I haven't found an existing compatibility report for this game.
  • [x] that I have checked whether there are updates for my system available.

Related existing issues, checked before filing:

  • #9827 — sigsys_handler advances %rip by +0xb, breaks on raw syscall
    instructions emitted by Denuvo Anti-Cheat (closed as duplicate of #9164).
    This may be the same root cause as this report — it lists SIGSEGV as one
    of its three failure modes.
  • #9164 — ARC Raiders (1808500), the issue #9827 was folded into.
  • #9345 — UE shader cache issue (closed/completed), different symptom.
  • #9415 — secondary-monitor crash (closed as duplicate), different symptom.

Filing separately because this report adds a resolved crash symbol and
reproduction on two independent Proton builds
, which I did not find in the
above. Happy for it to be folded into #9164 if it is the same bug.

Symptoms

The game appears to freeze mid-match for 15-30 seconds and then disappears.
It is not a hang — systemd-coredump records a SIGSEGV at the exact
instant the picture freezes; the visible "freeze" is post-crash teardown. No
Unreal crash report is produced because the process dies inside
wine-preloader before Unreal's handler completes.

16 crashes between 2026-09-12 and 2026-09-30, roughly every 20-40 minutes
of play. No gameplay trigger — the most recent occurred while running through
an empty part of the map with no combat and no other players nearby.

Always the same crash site, on two different Proton builds. Resolved with
gdb against each build's own ntdll.so:

Proton Experimental   ntdll.so +0x4db2d   setup_raise_exception   rsp 0xe602eee50   (unmapped)
Proton Hotfix         ntdll.so +0x4d70d   setup_raise_exception   rsp 0x10f801ee50  (unmapped)

Both crash inside setup_raise_exception with a stack pointer pointing at
unmapped memory, so the stack cannot be walked:

Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007bd93a278b2d in ?? ()
Backtrace stopped: Cannot access memory at address 0xe602eee50

This looks like a double fault: something faults first, and Wine then crashes
building the exception frame to deliver it, masking the original fault.

Across six Experimental dumps the crash address had identical low bits (b2d)
under six different ASLR bases — one reproducible code path, not random memory
corruption.

Post-crash behaviour differs between builds (2 s samples):

Experimental   11:48:52 cpu=12450ms thr=200 gpu=71%   normal
               11:48:57 cpu= 1990ms thr=201 gpu= 1%   crash; ONE core spinning
               11:49:16 cpu=    0ms                   process dies (~17 s later)

Hotfix         12:29:13 cpu=14870ms thr=222 gpu=76%   normal
               12:29:40 cpu=    0ms thr=224 gpu= 0%   crash; total CPU stop
               12:30:09                               process dies (~27 s later)

In both cases ~200 other threads are idle and the GPU falls to 0-5%.

Ruled out with measurement:

  • Not a Wine sync deadlock — wineserver uses 0 ms CPU during the
    event. PROTON_NO_ESYNC=1 + PROTON_NO_FSYNC=1 ran for ~8 days with no
    effect and have been removed.
  • Not a GPU hang — zero amdgpu ring timeouts, resets, soft recoveries or VM
    faults in the entire journal.
  • Not bad RAM — identical crash offset across six dumps.
  • Not Proton-version specific — reproduced on Experimental and Hotfix.
  • Not vm.max_map_count — already 1048576, not the distro default.
  • Not the anti-cheat rejecting the session — plays fine for 20-40 min on
    both builds, no ARAV1011 kick.

Reproduction

Play ARC Raiders for 20-40 minutes. No specific action required.

arc-trace-20260930-112959-tail.csv
arc-trace-20260930-121102-tail.csv
crash-timeline.txt
system-info.txt

Ddec0y1 2026-09-30 github

Correction to my own filing: I wrote that this could be folded into #9164,
but on closer reading #9164 is an "Out of video memory" crash at launch with
a D3D12RHI stack trace — a different failure from this one, which happens
20-40 minutes into a session with a SIGSEGV in ntdll.so setup_raise_exception.

The closer match is #9827 (sigsys_handler advancing %rip by +0xb on raw
syscall instructions emitted by Denuvo Anti-Cheat), which lists SIGSEGV as one
of its failure modes. That issue was closed as a duplicate of #9164, but those
two also describe different problems — so that mechanism may not currently be
tracked by any open issue.

Kkisak-valve maintainer 2026-09-30 github

Hello @dec0y1, we're using one issue report per unofficially supported game title, and usually I'd transfer this issue report to #9164, but for some reason you've decided to use AI tools to greatly degrade what you're trying to communicate. Please add a note to that issue report with what you're experiencing, using your own words instead of whatever tool generated this, and include a Proton log for a Proton dev to ponder.