diff options
author | Simon Ser <contact@emersion.fr> | 2021-01-17 22:25:18 +0100 |
---|---|---|
committer | Simon Ser <contact@emersion.fr> | 2021-01-17 22:25:18 +0100 |
commit | 04d89a8bc5c5b0db0ae24ca3e2b35f5632ed6d23 (patch) | |
tree | 905e4ca2f7741742dfa51162364336a6beda25bf /backend/drm/drm.c | |
parent | f17b0f975d271a2c001627fe47af9a5b8800c774 (diff) |
backend/drm: fix modifiers for cursor plane buffers
In 93cd3a79b26c ("backend/drm: stop using GBM flags"), we stopped
using the GBM_BO_USE_LINEAR flag in favor of a modifier list set
to { DRM_FORMAT_MOD_LINEAR }. However, the last argument of
drm_plane_init_surface disables modifiers -- so the buffer will just
get allocated with an implicit modifier, without necessarily being
LINEAR.
To fix this, allow modifiers when allocating the cursor buffers.
wlr_drm_plane.formats should already have the necessary LINEAR
restrictions.
Fixes: 93cd3a79b26c ("backend/drm: stop using GBM flags")
Diffstat (limited to 'backend/drm/drm.c')
-rw-r--r-- | backend/drm/drm.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/backend/drm/drm.c b/backend/drm/drm.c index 99520143..32fbb35b 100644 --- a/backend/drm/drm.c +++ b/backend/drm/drm.c @@ -891,7 +891,7 @@ static bool drm_connector_set_cursor(struct wlr_output *output, h = ret ? 64 : h; if (!drm_plane_init_surface(plane, drm, w, h, - DRM_FORMAT_ARGB8888, false)) { + DRM_FORMAT_ARGB8888, true)) { wlr_drm_conn_log(conn, WLR_ERROR, "Cannot allocate cursor resources"); return false; } |