diff options
author | Daniel Stone <[email protected]> | 2018-04-02 13:20:34 +0100 |
---|---|---|
committer | Daniel Stone <[email protected]> | 2018-04-02 19:07:57 +0100 |
commit | 4cbecb61682a0ee426faaa03d824fc8fd7aef826 (patch) | |
tree | 16dd6af79b36b62ea9a96f901cca4e69dc1fdf57 | |
parent | 2be6143032939c5c5fb6de4a44ffe3b076e1f098 (diff) |
st/dri: Initialise modifier to INVALID for DRI2
When allocating a buffer for DRI2, set the modifier to INVALID to inform
the backend that we have no supplied modifiers and it should do its own
thing. The missed initialisation forced linear, even if the
implementation had made other decisions.
This resulted in VC4 DRI2 clients failing with:
Modifier 0x0 vs. tiling (0x700000000000001) mismatch
Signed-off-by: Daniel Stone <[email protected]>
Reported-by: Andreas Müller <[email protected]>
Reviewed-by: Eric Anholt <[email protected]>
Fixes: 3f8513172ff6 ("gallium/winsys/drm: introduce modifier field to winsys_handle")
-rw-r--r-- | src/gallium/state_trackers/dri/dri2.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gallium/state_trackers/dri/dri2.c b/src/gallium/state_trackers/dri/dri2.c index 31d17d46c29..58a6757f037 100644 --- a/src/gallium/state_trackers/dri/dri2.c +++ b/src/gallium/state_trackers/dri/dri2.c @@ -806,6 +806,7 @@ dri2_allocate_textures(struct dri_context *ctx, whandle.handle = buf->name; whandle.stride = buf->pitch; whandle.offset = 0; + whandle.modifier = DRM_FORMAT_MOD_INVALID; if (screen->can_share_buffer) whandle.type = DRM_API_HANDLE_TYPE_SHARED; else |