mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2024-11-21 22:52:20 +00:00
backend/drm: fix timeline feature flag on multi-GPU setups
This piece of code checks for multi-GPU renderer support, so it
needs to run after the renderer is initialized.
Fixes: 514c4b4cce
("backend: add timeline feature flag")
Closes: https://github.com/swaywm/sway/issues/8382
This commit is contained in:
parent
402a862413
commit
3b3ed21e61
@ -264,6 +264,12 @@ struct wlr_backend *wlr_drm_backend_create(struct wlr_session *session,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
drm->backend.features.timeline = drm->iface != &legacy_iface;
|
||||||
|
if (drm->parent) {
|
||||||
|
drm->backend.features.timeline = drm->backend.features.timeline &&
|
||||||
|
drm->mgpu_renderer.wlr_rend->features.timeline;
|
||||||
|
}
|
||||||
|
|
||||||
drm->session_destroy.notify = handle_session_destroy;
|
drm->session_destroy.notify = handle_session_destroy;
|
||||||
wl_signal_add(&session->events.destroy, &drm->session_destroy);
|
wl_signal_add(&session->events.destroy, &drm->session_destroy);
|
||||||
|
|
||||||
|
@ -126,12 +126,6 @@ bool check_drm_features(struct wlr_drm_backend *drm) {
|
|||||||
drm->supports_tearing_page_flips = drmGetCap(drm->fd, DRM_CAP_ATOMIC_ASYNC_PAGE_FLIP, &cap) == 0 && cap == 1;
|
drm->supports_tearing_page_flips = drmGetCap(drm->fd, DRM_CAP_ATOMIC_ASYNC_PAGE_FLIP, &cap) == 0 && cap == 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
drm->backend.features.timeline = drm->iface != &legacy_iface;
|
|
||||||
if (drm->parent) {
|
|
||||||
drm->backend.features.timeline = drm->backend.features.timeline &&
|
|
||||||
drm->mgpu_renderer.wlr_rend->features.timeline;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (env_parse_bool("WLR_DRM_NO_MODIFIERS")) {
|
if (env_parse_bool("WLR_DRM_NO_MODIFIERS")) {
|
||||||
wlr_log(WLR_DEBUG, "WLR_DRM_NO_MODIFIERS set, disabling modifiers");
|
wlr_log(WLR_DEBUG, "WLR_DRM_NO_MODIFIERS set, disabling modifiers");
|
||||||
} else {
|
} else {
|
||||||
|
Loading…
Reference in New Issue
Block a user