Hasty Briefsbeta

Not so "mini"-dumps: How we found missing crashes on SteamOS

17 days ago
  • #Sentry
  • #SteamOS
  • #CrashReporting
  • Sentry improved its game engine and native SDKs to better handle crash reports for Windows-built games running on Linux via Wine/Proton.
  • A support ticket revealed missing crash reports on Steam Deck, leading to the discovery of oversized minidumps (500+ MB vs. typical 50-80 KB).
  • Investigation found Wine's Thread Environment Block (TEB) was causing Crashpad to capture excessive stack memory (11 MB per thread).
  • Wine's minidump generation uses the stack pointer (SP) instead of TEB values, a method adopted by Sentry for more accurate stack capture.
  • Sentry implemented a three-layer solution: Crashpad smart stack capture, Sentry Native API for configuration, and automatic detection in game engine SDKs.
  • The fix benefits all Linux compatibility layers (Proton, Wine, CrossOver, etc.) and is being rolled out across Unreal, Unity, and Godot SDKs.