Forum Discussion

AcuminF's avatar
AcuminF
Seasoned Newcomer
29 days ago

FC26 ExitType 95 Crash: NVIDIA DPC Deadlock Triggered by EA Javelin

 Summary

After extensive kernel-level tracing (xperf/WinDbg), the root cause of the FC26 ExitType 95 (267) crash on my system has been definitively identified.

EA Javelin Anti-Cheat's kernel-mode hooks trigger a spinlock deadlock inside the NVIDIA display driver (`nvlddmkm.sys`), causing a 5.7-second DPC hang that freezes the entire system. Javelin's heartbeat monitor then times out, producing the ExitType 95 crash.

This is NOT a hardware defect, driver bug in isolation, or system misconfiguration. The NVIDIA driver works perfectly in every other game tested (max DPC < 4ms). The deadlock only manifests when EA Javelin is actively hooking GPU-related kernel paths.

Causal Chain

FC26 launches → EA Javelin loads kernel hooks

Javelin hooks intercept GPU syscalls (DX12 / kernel thunks)

NVIDIA driver DPC fires on CPU 0 (nvlddmkm+0xe8fe0)

DPC tries to acquire global spinlock nvDumpConfig+0x20a3d0

Lock is held by another CPU — Javelin's GPU operations on CPU N

DPC spins at DISPATCH_LEVEL (cannot be preempted)

5.7 seconds later: lock released, DPC completes

Javelin heartbeat timed out during freeze → ExitType 95 crash

Why Only EA Games?

The NVIDIA driver's internal spinlock (`nvDumpConfig+0x20a3d0`) is a standard GPU synchronization primitive. Under normal gaming workloads, cross-CPU lock contention at DISPATCH_LEVEL resolves in microseconds. However, EA Javelin's kernel hooks introduce additional GPU operations on other CPUs that change the lock acquisition/release timing, creating a window where the DPC on CPU 0 cannot acquire the lock and spins indefinitely.

No other game triggers this because no other game loads EA Javelin's kernel driver (`eaanticheat.sys`).

Evidence

 

xperf Kernel Trace — DPC Latency

| Metric | FC26 (Javelin active) | Other AAA Game (no Javelin) |

|--------|----------------------|---------------------------|

| nvlddmkm max DPC | **5,705,596 us (5.7s)** | 4,096 us (4ms) |

| System behavior | Full freeze → crash | Perfectly smooth |

WinDbg Disassembly — The Deadlock

nvlddmkm+0xe9082:

  lock cmpxchg dword ptr [nvlddmkm!nvDumpConfig+0x20a3d0], esi

  jne   nvlddmkm+0xe9082          ; ← SPINS FOREVER at DISPATCH_LEVEL

A DPC cannot be preempted — it owns CPU 0 until it completes or voluntarily yields. With the lock held elsewhere and no preemption possible, CPU 0 is deadlocked.

 xperf Sampled Profile — During the 5.7s Hang

While CPU 0 is deadlocked in the DPC, profile samples show:

- `eaanticheat.sys` actively running on CPU 3

- Normal game code (`FC26.exe`) running on other cores

- No nvlddmkm profile hits on CPU 0 — the spinloop is invisible to the profiler, confirming a tight `cmpxchg` spin rather than productive work

Previous Troubleshooting (All Ruled Out)

The following were investigated and conclusively excluded:

- Page file corruption

- GPU TDR (Event 4101) — zero events

- WHEA hardware errors — zero events

- NVMe storage errors — zero events

- fTPM stutter — timing does not correlate

- NVIDIA Overlay, HAGS, HD Audio, power management settings

- AMD iGPU, PCI phantom devices

- HVCI / Memory Integrity, Secure Boot

- EA Anticheat reinstallation

 Request

This is a cross-vendor interaction bug between EA Javelin and the NVIDIA driver. I am reporting it to both parties. Specifically, I would ask the EA Anticheat team to:

  1. Review the kernel hook paths that intercept GPU-related operations (DX12 submissions, kernel thunks, or WDDM callbacks) to identify which specific interception pattern triggers the NVIDIA DPC lock contention.
  2. Consider adding a jitter or backoff mechanism to anticheat GPU operations, so they don't contend with the driver's internal DPC spinlocks.
  3. Coordinate with NVIDIA — I am sending a parallel report to NVIDIA with the exact `nvlddmkm.sys` offsets and deadlock location. A joint investigation would be the fastest path to a fix.

I am happy to provide full ETL traces, system configuration details, or run additional diagnostic captures on request.

System Configuration

- CPU: AMD Ryzen 7 7800X3D | **GPU:** RTX 5070 Ti (610.62)

- OS: Windows 11 Pro 25H2 Build 26200

- RAM: 32 GB DDR5

- EA Anticheat version: 1.0.14073350.0

- HVCI: Enabled | Secure Boot: Enabled

Attachments

  1. `01_dpc_comparison.txt` — DPC latency comparison (FC26 vs other game)
  2. `02_spinlock_disassembly.txt` — WinDbg disassembly of the deadlock location
  3. `03_system_info.txt` — Full system and troubleshooting history
  4. `04_raw_dpc_event.txt` — Raw ETW DPC event with timestamps

Best regards,
AcunminF

8 Replies

  • thanks for this extensive investigation! I hope it will result in a speed up on resolving this issue.

  • fratersang's avatar
    fratersang
    Seasoned Newcomer
    21 days ago

    Seems to be worse on 25h2 for some reason, hope you've helped them find some answers. I'm getting this in Battlefield 6 and it's getting frustrating.

  • honestly good job youre doing a multi billion dollar company's work 

  • EmirTaha13's avatar
    EmirTaha13
    Seasoned Newcomer
    17 days ago

    I really hope this gets fixed soon or I'm gonna lose my mind

  • erikdelga81's avatar
    erikdelga81
    Seasoned Newcomer
    13 days ago

    I'm experiencing the exact same full-system freeze/reboot pattern described here, on completely different hardware:

    System Configuration:

    • CPU: AMD Ryzen 5 7600X
    • GPU: NVIDIA GeForce RTX 4060
    • Latest NVIDIA driver tested (610.74), also tested previous version (595.97) — same result on both
    • Windows 11

    Symptom: After a few minutes of gameplay, the entire system freezes completely (no keyboard input, can't open Task Manager, no response at all), then reboots on its own. Windows Event Viewer shows Kernel-Power Event ID 41 with BugcheckCode 0 — no BSOD, no crash dump, no application-level error logged. This matches the "invisible to profiler" nature of the deadlock described in the original post exactly.

    Troubleshooting already completed (all ruled out):

    • Full PSU stress test via OCCT (20+ min sustained load, no errors)
    • Windows Memory Diagnostic (no RAM errors)
    • Full EA Desktop / EA AntiCheat reinstall (clean, all residual folders removed)
    • Visual C++ Redistributables reinstalled
    • GPU Power Limit reduced to 85% via MSI Afterburner — crash still occurs
    • NVIDIA "Low Latency Mode" and "Power Management Mode" adjusted — no change
    • Confirmed this only happens with FC26, never with other demanding titles on the same hardware

    This strongly supports the Javelin/nvlddmkm.sys interaction theory in the original post rather than a hardware issue on my end. Hoping this adds another data point toward a fix — thank you for the detailed technical investigation.

  • EMTYTD's avatar
    EMTYTD
    Rising Newcomer
    8 days ago

    A lot of us playing Battlefield getting the same exact error, NVIDIA person here as well, extemely frustrated, seems to be happen across other games, but I am not playing anything else, subscribing because this seems to be the most thorough, and promising troubleshooting and data dump yet on the problem. Thank you for your time invested in this! 

  • Hi there, this is likely related to faulty hardware, such as thermal, firmware, or other throttling issues, which can result in scheduling issues and timeouts.

    I’d recommend checking your hardware. Thank you.

  • EA_LunardustCat's avatar
    EA_LunardustCat
    Icon for Community Manager rankCommunity Manager
    9 hours ago

    Hi there, the issue you’re describing seems to be different from what the OP posted.

    It may be faulty hardware triggering a preventative shutdown or freeze due to thermal throttling or a similar system-level issue. I’d recommend checking your hardware, temperatures, and system stability first. Thanks.