** Description changed:

  Hyprland 0.53.3 on Ubuntu 26.04 crashes with SIGSEGV during a
  monitor/DPMS state transition.
  
  The crash report shows the fault in:
  
  `NColorManagement::CImageDescription::id()`
  
  with the stack continuing through:
  
  `CColorManagementImageDescriptionInfo`
  
  and the Wayland content/color-management handling code.
  
  Immediately before the crash, Aquamarine repeatedly logs:
  
  `drm: Session inactive`
  
  This appears to match an upstream Hyprland 0.53.x issue involving
  monitor disconnect/reconnect or DPMS wake:
  
  https://github.com/hyprwm/Hyprland/discussions/12884
  
  Upstream identified/fixed the issue with this commit:
  
  
https://github.com/hyprwm/Hyprland/commit/e123fd3e667177fa67624b9f5960653410c7bebb
  
  The fix delays removal of a disconnected monitor from compositor state
  until monitor teardown has completed.
  
  Ubuntu 26.04 currently ships Hyprland 0.53.3, which predates this fix.
  This looks like a good candidate for backporting the upstream fix to the
  Ubuntu package.
  
  Environment:
  
  * Ubuntu 26.04 LTS
  * Hyprland 0.53.3
  * AMD Cezanne / Radeon Vega
  * Kernel 7.0.0-30-generic
  
  The crash terminated the Hyprland graphical session and left some
  terminal child processes orphaned.
  
  ProblemType: Bug
  DistroRelease: Ubuntu 26.04
  Package: hyprland 0.53.3+ds-4
  ProcVersionSignature: Ubuntu 7.0.0-30.30-generic 7.0.12
  Uname: Linux 7.0.0-30-generic x86_64
  ApportVersion: 2.34.1-0ubuntu0.1
  Architecture: amd64
  CasperMD5CheckResult: pass
  CurrentDesktop: Hyprland
  Date: Wed Aug 26 11:59:29 2026
  InstallationDate: Installed on 2026-07-11 (47 days ago)
  InstallationMedia: Ubuntu 26.04 "Resolute Raccoon" - Release amd64 
(20260423.1)
  ProcEnviron:
-  LANG=en_US.UTF-8
-  PATH=(custom, no user)
-  SHELL=/usr/bin/zsh
-  TERM=xterm-ghostty
-  XDG_RUNTIME_DIR=<set>
+  LANG=en_US.UTF-8
+  PATH=(custom, no user)
+  SHELL=/usr/bin/zsh
+  TERM=xterm-ghostty
+  XDG_RUNTIME_DIR=<set>
  SourcePackage: hyprland
  UpgradeStatus: No upgrade log present (probably fresh install)
+ 
+ [Impact]
+ 
+ Hyprland 0.53.3 in Ubuntu 26.04 can crash with SIGSEGV during monitor
+ disconnect/reconnect or DPMS transitions.
+ 
+ The crash occurs in NColorManagement::CImageDescription::id() and
+ terminates the graphical Hyprland session.
+ 
+ The issue matches the upstream report:
+ https://github.com/hyprwm/Hyprland/discussions/12884
+ 
+ Upstream fix:
+ 
https://github.com/hyprwm/Hyprland/commit/e123fd3e667177fa67624b9f5960653410c7bebb
+ 
+ [Test Plan]
+ 
+ 1. Install the patched hyprland package.
+ 2. Log into a Hyprland session with multiple monitors.
+ 3. Repeatedly exercise DPMS:
+ 
+    hyprctl dispatch dpms off
+    sleep 10
+    hyprctl dispatch dpms on
+ 
+ 4. Also exercise individual monitors with:
+ 
+    hyprctl dispatch dpms off <monitor>
+    sleep 10
+    hyprctl dispatch dpms on <monitor>
+ 
+ 5. Repeat multiple cycles and verify Hyprland remains running and no new
+    Hyprland crash report containing CImageDescription::id() is generated.
+ 
+ I tested the locally built 0.53.3+ds-4ubuntu0.1 package with repeated DPMS
+ cycles. The original Hyprland SIGSEGV has not reproduced.
+ 
+ On one all-monitor cycle one monitor did not automatically wake, but it
+ could be restored manually with `hyprctl dispatch dpms on <monitor>`.
+ This appears to be separate from the compositor crash addressed by this
+ patch.
+ 
+ [Where problems could occur]
+ 
+ The patch changes the lifetime of a disconnected monitor in Hyprland's
+ internal monitor collection. Regressions would therefore most likely
+ affect monitor disconnect/reconnect handling, workspace migration during
+ monitor removal, or selection of the highest-refresh-rate monitor.
+ 
+ The change is a small upstream backport and is already present in newer
+ Hyprland releases.

** Description changed:

- Hyprland 0.53.3 on Ubuntu 26.04 crashes with SIGSEGV during a
- monitor/DPMS state transition.
+ Hyprland 0.53.3 on Ubuntu 26.04 crashes with SIGSEGV during monitor/DPMS
+ transitions. The crash is in `NColorManagement::CImageDescription::id()`
+ and terminates the graphical session.
  
- The crash report shows the fault in:
- 
- `NColorManagement::CImageDescription::id()`
- 
- with the stack continuing through:
- 
- `CColorManagementImageDescriptionInfo`
- 
- and the Wayland content/color-management handling code.
- 
- Immediately before the crash, Aquamarine repeatedly logs:
- 
- `drm: Session inactive`
- 
- This appears to match an upstream Hyprland 0.53.x issue involving
- monitor disconnect/reconnect or DPMS wake:
- 
- https://github.com/hyprwm/Hyprland/discussions/12884
- 
- Upstream identified/fixed the issue with this commit:
- 
- 
https://github.com/hyprwm/Hyprland/commit/e123fd3e667177fa67624b9f5960653410c7bebb
- 
- The fix delays removal of a disconnected monitor from compositor state
- until monitor teardown has completed.
- 
- Ubuntu 26.04 currently ships Hyprland 0.53.3, which predates this fix.
- This looks like a good candidate for backporting the upstream fix to the
- Ubuntu package.
- 
- Environment:
- 
- * Ubuntu 26.04 LTS
- * Hyprland 0.53.3
- * AMD Cezanne / Radeon Vega
- * Kernel 7.0.0-30-generic
- 
- The crash terminated the Hyprland graphical session and left some
- terminal child processes orphaned.
- 
- ProblemType: Bug
- DistroRelease: Ubuntu 26.04
- Package: hyprland 0.53.3+ds-4
- ProcVersionSignature: Ubuntu 7.0.0-30.30-generic 7.0.12
- Uname: Linux 7.0.0-30-generic x86_64
- ApportVersion: 2.34.1-0ubuntu0.1
- Architecture: amd64
- CasperMD5CheckResult: pass
- CurrentDesktop: Hyprland
- Date: Wed Aug 26 11:59:29 2026
- InstallationDate: Installed on 2026-07-11 (47 days ago)
- InstallationMedia: Ubuntu 26.04 "Resolute Raccoon" - Release amd64 
(20260423.1)
- ProcEnviron:
-  LANG=en_US.UTF-8
-  PATH=(custom, no user)
-  SHELL=/usr/bin/zsh
-  TERM=xterm-ghostty
-  XDG_RUNTIME_DIR=<set>
- SourcePackage: hyprland
- UpgradeStatus: No upgrade log present (probably fresh install)
- 
- [Impact]
- 
- Hyprland 0.53.3 in Ubuntu 26.04 can crash with SIGSEGV during monitor
- disconnect/reconnect or DPMS transitions.
- 
- The crash occurs in NColorManagement::CImageDescription::id() and
- terminates the graphical Hyprland session.
- 
- The issue matches the upstream report:
+ This matches the upstream issue:
  https://github.com/hyprwm/Hyprland/discussions/12884
  
  Upstream fix:
  
https://github.com/hyprwm/Hyprland/commit/e123fd3e667177fa67624b9f5960653410c7bebb
  
+ The fix delays removal of a disconnected monitor until teardown
+ completes. Ubuntu 26.04's Hyprland 0.53.3 predates this fix.
+ 
+ [Impact]
+ 
+ Monitor disconnect/reconnect or DPMS transitions can crash Hyprland and
+ terminate the user's graphical session.
+ 
  [Test Plan]
  
- 1. Install the patched hyprland package.
- 2. Log into a Hyprland session with multiple monitors.
- 3. Repeatedly exercise DPMS:
+ Install the patched package and repeatedly cycle DPMS:
  
-    hyprctl dispatch dpms off
-    sleep 10
-    hyprctl dispatch dpms on
+ ```
+ hyprctl dispatch dpms off
+ sleep 10
+ hyprctl dispatch dpms on
+ ```
  
- 4. Also exercise individual monitors with:
+ Also test individual monitors with `dpms off/on <monitor>`.
  
-    hyprctl dispatch dpms off <monitor>
-    sleep 10
-    hyprctl dispatch dpms on <monitor>
+ I tested `0.53.3+ds-4ubuntu0.1` with repeated DPMS cycles and have not
+ reproduced the original SIGSEGV.
  
- 5. Repeat multiple cycles and verify Hyprland remains running and no new
-    Hyprland crash report containing CImageDescription::id() is generated.
- 
- I tested the locally built 0.53.3+ds-4ubuntu0.1 package with repeated DPMS
- cycles. The original Hyprland SIGSEGV has not reproduced.
- 
- On one all-monitor cycle one monitor did not automatically wake, but it
- could be restored manually with `hyprctl dispatch dpms on <monitor>`.
- This appears to be separate from the compositor crash addressed by this
- patch.
+ One cycle failed to automatically wake one monitor, but it recovered
+ with `hyprctl dispatch dpms on <monitor>` and appears unrelated to this
+ crash.
  
  [Where problems could occur]
  
- The patch changes the lifetime of a disconnected monitor in Hyprland's
- internal monitor collection. Regressions would therefore most likely
- affect monitor disconnect/reconnect handling, workspace migration during
- monitor removal, or selection of the highest-refresh-rate monitor.
+ The patch changes when a disconnected monitor is removed from Hyprland's
+ internal monitor list, so regressions would most likely affect monitor
+ disconnect/reconnect or workspace migration during monitor removal.
  
- The change is a small upstream backport and is already present in newer
- Hyprland releases.
+ The patch is a small upstream backport already present in newer Hyprland
+ releases.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2165180

Title:
  Hyprland 0.53.3 crashes on monitor wake/DPMS reconnect

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/hyprland/+bug/2165180/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to