icholy / icholy/dotfiles

wezterm crashes (NVIDIA EGL segfault), taking down all terminal windows

Open
#14 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Lua
Stars
5
Forks
0
PR merge metrics
No merged PRs in 30d

Description

Problem

WezTerm crashes and takes all terminal windows down with it (they share a single wezterm-gui process). Recurring and accelerating: 6 crashes in ~2 weeks (Jun 17, 23, 28, Jul 1 x3).

Root cause

Segfault inside the NVIDIA proprietary driver, called from wezterm's OpenGL/EGL front-end. Every crash is preceded by MakeCurrent: BAD_ALLOC.

Core dump backtrace:

#0  libnvidia-eglcore.so.595.71.05 + 0xb6be88   <- crash is inside the NVIDIA driver
#1  libnvidia-eglcore.so.595.71.05 + 0xb7f0bd
#2  libnvidia-eglcore.so.595.71.05 + 0x849967
#3  wezterm-gui + 0x235a0d6                      <- wezterm OpenGL front-end calling in

Log immediately before the segfault:

window::egl > make_current failed ... MakeCurrent: BAD_ALLOC
systemd-coredump: Process (wezterm-gui) dumped core / Segmentation fault

BAD_ALLOC on eglMakeCurrent is a known NVIDIA EGL failure mode, typically triggered by GPU context loss / resource churn.

Environment

  • GPU: NVIDIA GeForce RTX 3060
  • Driver: 595.71.05
  • Display: X11 (gdm-x-session)
  • wezterm: 20260607-013257-093bf6bf (self-built from source)

Why all windows die together

All windows spawn into one shared wezterm-gui process ("Spawned your command via the existing GUI instance"). One segfault kills every window.

Fix

  • Switch front_end off the crashing OpenGL/EGL path to WebGpu (Vulkan) in ~/.config/wezterm/wezterm.lua
  • If WebGpu still crashes, fall back to front_end = "Software"
  • Root-cause hardening: update NVIDIA driver from 595.71.05 (the actual bug is in the driver, not wezterm)

Monitoring

Watch for recurrence with:

coredumpctl list wezterm-gui

Any new SIGSEGV row means the new path is still hitting a driver bug.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with ~/.config/wezterm/wezterm.lua and review the configured front_end alongside the crash details in the issue. Run coredumpctl list wezterm-gui to check whether crashes recur after the configuration change. Done means the shared wezterm-gui process no longer produces SIGSEGV entries, or the remaining failure is documented as an NVIDIA driver issue.

Written by the indexing model from the issue text.

Assessment

Tech stack
linux, lua
Domain
desktop, operating-systems
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.