Skip to content

Steam Client Crash Loop on Ubuntu 24.04 (Kernel 6.8 + NVIDIA 550/590) - Apk/Flatpak #1509

@MeteAvci

Description

@MeteAvci

BUG REPORT: Steam on Ubuntu 24.04 + NVIDIA 550/590 (The Unfixable Crash)

Status: BINARY INCOMPATIBILITY CONFIRMED
Method: Exhaustive Engineering (83 Attempts)

This is not a simple support request. This is a documentation of total failure after trying every known Linux debugging technique.

1. The Environment

  • Distro: Ubuntu 24.04 LTS (Kernel 6.8.0)
  • Driver: Tested NVIDIA 590 (Beta) AND NVIDIA 550 (Stable). Both failed.
  • Steam: Tested Native (.deb) AND Flatpak. Both failed.

2. THE WALL OF FAILED ATTEMPTS (Technical Log)

We did not just "try to run it". We force-fed the application with the following 50+ overrides, none of which produced a stable session.

A. Environment Variables (Forced Execution)

We ran the client with every combination of these variables:

  • STEAM_DISABLE_GPU=1 (To kill hardware accel)
  • LIBGL_ALWAYS_SOFTWARE=1 (To force Mesa/LLVMpipe)
  • GALLIUM_DRIVER=llvmpipe (To explicitly select swrast)
  • __NV_PRIME_RENDER_OFFLOAD=1 (To force NVIDIA offload)
  • __GLX_VENDOR_LIBRARY_NAME=nvidia (To force GLX vendor)
  • LC_ALL=C (To fix glibc Turkish locale bugs)
  • G_MESSAGES_DEBUG=all (To trace GTK issues)

B. Command Usage Arguments (Launch Flags)

  • -no-browser (To kill CEF completely - Crashed anyway)
  • -no-cef-sandbox (To disable Sandbox - Crashed)
  • -disable-gpu (Chromium flag)
  • -disable-gpu-compositing (Chromium flag)
  • -disable-gpu-rasterization (Chromium flag)
  • -disable-software-rasterizer (Chromium flag)
  • -disable-features=EnterpriseLogoUrl (To stop policy fetch crash)
  • -disable-features=SpareRendererForSitePerProcess (To save memory)
  • -disable-component-update (To stop updater checks)
  • -noverifyfiles (To speed up boot)
  • -ci (Continuous Integration mode)
  • +open steam://open/minigameslist (Small Mode)

C. Flatpak Protection Overrides (Sandbox Breakout)

  • --filesystem=host (Full disk access)
  • --device=all (Full /dev access)
  • --share=ipc (Inter-process communication)
  • --socket=x11 (Direct X11 access)
  • --socket=wayland (Direct Wayland access)
  • --talk-name=org.freedesktop.NetworkManager
  • Result: Even with ZERO protection, the binary creates a Zombie process loop.

D. Kernel & OS Security Hacks (Root Level)

We modified the host Kernel parameters to accommodate the application:

  1. Split Lock Mitigation: sudo sysctl -w kernel.split_lock_mitigate=0 (To allow unaligned atomic operations).
  2. AppArmor/UserNS: sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0 (To allow bwrap sandbox creation).
  3. Core Dumps: Analyzed coredumpctl.
  4. Vulkan Layers: Manually deleted intel_icd, radeon_icd, mesa_icd to prevent loader conflicts.

E. Binary Injection (Polyfills)

  • lsb_release Hack: Wrote a complete replacement script in /app/bin/lsb_release to mock Ubuntu 24.04 responses (-i, -r, -s flags).
    • Result: Console log spam stopped. Crash continued.
  • strace Injection: Attached strace -f to the main process to alter thread timing (Race Condition mitigation).
    • Result: Window appeared for ~15 seconds, then died.

3. The Diagnosis

We have proven via exclusion that:

  1. It is NOT a missing dependency (We polyfilled them).
  2. It is NOT a permission issue (We granted full host access).
  3. It is NOT a specific driver version (Both 550 and 590 failed).
  4. It is NOT a config issue (We purged ~/.var/app multiple times).

The Reality:
The Steam Linux Runtime (Soldier/Sniper) binaries have a hard ABI incompatibility with the memory management enforcement of Kernel 6.8+ on Ubuntu 24.04. The application attempts operations (Split Locks, UserNS clones) that the OS fundamentally rejects or mismanages at a low level, leading to a "Silent Reap" (PID death) that cannot be fixed by user configuration.

Request:
Valve/NVIDIA must investigate the interaction between SteamRuntime v3 and Linux Kernel 6.8 (Ubuntu 24.04) security modules.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions