Commit graph

24 commits

Author SHA1 Message Date
Timo Strunk
24d29008f0 fix(kms): skip empty DRM cleanup commit in display_configuration
display_configuration() issued an ALLOW_MODESET atomic commit on every udev
event, even when no planes needed detaching. The empty commit is a no-op
modeset that interferes with in-flight commits on the render thread, and it
fails with EPERM whenever we don't hold DRM master (e.g. a render-only
secondary GPU), aborting device enumeration.

Track whether any property was added and skip the commit when there is nothing
to do. A commit that does have changes still propagates its error as before, so
a genuine failure to apply cleanup is not silently swallowed.

https://github.com/pop-os/cosmic-comp/issues/2375

Authored by Claude Opus 4.8
Reviewed by Timo Strunk <Timo.Strunk@gmail.com>

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-23 18:17:51 -06:00
Alexander Daichendt
f5e0ba1594 make device DrmDevice in disable_crts 2026-07-01 21:18:43 +02:00
Alexander Daichendt
a9f2427c00 fix: internal laptop screen stuck on vendor logo with external monitor 2026-07-01 21:18:43 +02:00
Vukašin Vojinović
2ca99c670a chore: clippy 2026-03-18 18:19:03 +01:00
Vukašin Vojinović
1f7f0c70b7 chore: format for Rust 2024 2025-10-22 23:55:11 +02:00
Vukašin Vojinović
0847247c33 chore: clippy 2025-10-22 23:55:11 +02:00
Victoria Brekenfeld
b5cd62fd7a kms: skip cursor updates for fullscreen content above the minimum refresh rate 2025-01-06 20:23:05 +01:00
Victoria Brekenfeld
adcb81bbe0 deps: Switch from edid-rs to libdisplay-info 2025-01-06 20:23:05 +01:00
Victoria Brekenfeld
80965a61b9 kms: Adaptive VRR support 2024-11-27 09:37:01 +01:00
Ian Douglas Scott
15a6425836
Set default output transform based on DRM panel orientation (#901) 2024-10-07 18:12:40 +02:00
julianbraha
2e2356ab5f Use map.entry().or_insert() instead of map.contains_key() and map.insert() 2024-08-29 16:39:39 +02:00
Victoria Brekenfeld
ec5d89eaa9 kms: Make sure edid model doesn't contain 0 byte 2024-07-18 17:31:57 +02:00
Victoria Brekenfeld
4a22724cb8 kms: HACK: avoid crashing on bad edids 2024-07-18 17:31:57 +02:00
Victoria Brekenfeld
8da3ac6d75 kms: Fix frame scheduling 2024-06-27 18:15:18 +02:00
Victoria Brekenfeld
469a366207 kms: New backend
New backend utilizing a thread per surface for precise frame
scheduling.
2024-06-26 12:59:33 +02:00
Victoria Brekenfeld
1a8432395c kms: Handle max bpc property 2023-04-18 19:14:31 +02:00
Victoria Brekenfeld
38403c254f kms: Support vrr as boolean property 2023-04-18 19:13:31 +02:00
Victoria Brekenfeld
aa4a83b8ac drm: Log missing properties 2022-09-22 15:11:27 +02:00
Victoria Brekenfeld
352c526e9e kms: Clear non-primary planes on startup 2022-08-25 20:01:02 +02:00
Victoria Brekenfeld
6fd29784d2 kms: Fix remaining hot-plugging issue 2022-08-11 17:13:56 +02:00
Ian Douglas Scott
4f9e1cf394 Simplify redundant code 2022-07-15 20:21:56 -07:00
Victoria Brekenfeld
38ec635750 drm: Fix borked cleanup logic 2022-07-15 19:36:46 +02:00
Victoria Brekenfeld
6cbda03d87 formatting 2022-02-04 21:24:29 +01:00
Victoria Brekenfeld
db6ca9e61c Render cursors 2022-02-04 21:24:29 +01:00
Renamed from src/backend/kms/crtc_mapping.rs (Browse further)