No description
Find a file
Richard Chennault dddf51b441
kms: skip lease resume when drm device activation fails in resume_session()
When smithay's DrmDevice::activate() returns an error (e.g. because
drmSetMaster() failed during VT resume), resume_session() was only
logging the error and then proceeding to resume DRM leases on a device
that has no master. This leaves the compositor in a broken render state
where every atomic page flip returns EPERM.

Fix: continue to the next device on activate() failure. The device
surface stays inactive and lease resume is deferred. On the next
ActivateSession event (next VT switch to this TTY), resume_session()
will be called again and activate() will succeed once the seat manager
has granted DRM master.

Reproducer: hybrid GPU system (Intel iGPU render + NVIDIA display),
VT switch away from and back to COSMIC session. On return, drmSetMaster
races the seat notification; activate() fails; without this fix
the compositor floods journald with EPERM at 60fps.

Fixes: pop-os#2331, pop-os#2302
2026-06-16 14:41:01 -06:00
.github ci: Make sure we lint and test all features 2026-03-24 16:23:43 +01:00
cosmic-comp-config feat: allow naming pinned workspaces 2026-06-15 23:11:31 +02:00
data feat(tiling-exceptions): add exception for Thunderbird message compose dialog 2026-06-11 09:23:38 -06:00
debian Use automatic shared library dependency on libdisplay-info 2025-10-21 08:50:17 -06:00
examples fix: update test 2026-03-13 15:56:42 -04:00
resources i18n: translation updates from weblate 2026-05-25 23:11:40 +00:00
src kms: skip lease resume when drm device activation fails in resume_session() 2026-06-16 14:41:01 -06:00
.gitignore Rework source filtering. 2023-01-04 01:52:16 -08:00
build.rs Revert "fix: use SOURCE_GIT_HASH when building for pop ci" 2026-06-15 12:16:32 -06:00
Cargo.lock fix(dbus): Block on creation of zbus connection to avoid deadlock 2026-06-09 18:09:36 -04:00
Cargo.toml fix(dbus): Block on creation of zbus connection to avoid deadlock 2026-06-09 18:09:36 -04:00
flake.lock Update and fix flake.nix 2024-09-02 19:44:51 +02:00
flake.nix fix: add missing libdisplay-info library into flake.nix 2025-01-12 13:09:03 +01:00
i18n.toml i18n support 2023-07-06 00:04:34 +02:00
LICENSE Initial commit 2021-12-15 17:25:15 +01:00
Makefile fix: add git hash to .cargo/config when vendoring 2026-06-15 12:16:32 -06:00
rust-toolchain.toml chore: bump MSRV to 1.90 2025-12-22 16:29:22 +01:00
rustfmt.toml chore: format for Rust 2024 2025-10-22 23:55:11 +02:00