From 690b8806dd3001c0cba0efaba8c0031f67f66d67 Mon Sep 17 00:00:00 2001 From: Ivan Molodetskikh <yalterz@gmail.com> Date: Sun, 6 Mar 2022 16:56:27 +0300 Subject: [PATCH] backends/native: Change uint32_t modifiers to uint64_t They were erroneously cast to uint32_t. In particular this prevented the invalid modifier from working as it is equal to a 64-bit -1. Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2322> --- src/backends/native/meta-drm-buffer-dumb.c | 2 +- src/backends/native/meta-drm-buffer-gbm.c | 2 +- src/backends/native/meta-drm-buffer-import.c | 2 +- src/backends/native/meta-drm-buffer-private.h | 2 +- src/backends/native/meta-drm-buffer.c | 2 +- src/backends/native/meta-drm-buffer.h | 2 +- src/backends/native/meta-renderer-native.c | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/backends/native/meta-drm-buffer-dumb.c b/src/backends/native/meta-drm-buffer-dumb.c index 87ed4c9ce..dcf994947 100644 --- a/src/backends/native/meta-drm-buffer-dumb.c +++ b/src/backends/native/meta-drm-buffer-dumb.c @@ -163,7 +163,7 @@ meta_drm_buffer_dumb_get_offset (MetaDrmBuffer *buffer, return buffer_dumb->offset; } -static uint32_t +static uint64_t meta_drm_buffer_dumb_get_modifier (MetaDrmBuffer *buffer) { return DRM_FORMAT_MOD_LINEAR; diff --git a/src/backends/native/meta-drm-buffer-gbm.c b/src/backends/native/meta-drm-buffer-gbm.c index 2b00b1ebf..5a7791582 100644 --- a/src/backends/native/meta-drm-buffer-gbm.c +++ b/src/backends/native/meta-drm-buffer-gbm.c @@ -124,7 +124,7 @@ meta_drm_buffer_gbm_get_offset (MetaDrmBuffer *buffer, return gbm_bo_get_offset (buffer_gbm->bo, plane); } -static uint32_t +static uint64_t meta_drm_buffer_gbm_get_modifier (MetaDrmBuffer *buffer) { MetaDrmBufferGbm *buffer_gbm = META_DRM_BUFFER_GBM (buffer); diff --git a/src/backends/native/meta-drm-buffer-import.c b/src/backends/native/meta-drm-buffer-import.c index 698bbda08..d858b18e6 100644 --- a/src/backends/native/meta-drm-buffer-import.c +++ b/src/backends/native/meta-drm-buffer-import.c @@ -104,7 +104,7 @@ meta_drm_buffer_import_get_offset (MetaDrmBuffer *buffer, return meta_drm_buffer_get_offset (importee, offset); } -static uint32_t +static uint64_t meta_drm_buffer_import_get_modifier (MetaDrmBuffer *buffer) { MetaDrmBufferImport *buffer_import = META_DRM_BUFFER_IMPORT (buffer); diff --git a/src/backends/native/meta-drm-buffer-private.h b/src/backends/native/meta-drm-buffer-private.h index 9b41379f1..859269114 100644 --- a/src/backends/native/meta-drm-buffer-private.h +++ b/src/backends/native/meta-drm-buffer-private.h @@ -52,7 +52,7 @@ struct _MetaDrmBufferClass uint32_t (* get_format) (MetaDrmBuffer *buffer); int (* get_offset) (MetaDrmBuffer *buffer, int plane); - uint32_t (* get_modifier) (MetaDrmBuffer *buffer); + uint64_t (* get_modifier) (MetaDrmBuffer *buffer); gboolean (* fill_timings) (MetaDrmBuffer *buffer, CoglFrameInfo *info, diff --git a/src/backends/native/meta-drm-buffer.c b/src/backends/native/meta-drm-buffer.c index c526263f7..b7d4d8d30 100644 --- a/src/backends/native/meta-drm-buffer.c +++ b/src/backends/native/meta-drm-buffer.c @@ -222,7 +222,7 @@ meta_drm_buffer_get_offset (MetaDrmBuffer *buffer, return META_DRM_BUFFER_GET_CLASS (buffer)->get_offset (buffer, plane); } -uint32_t +uint64_t meta_drm_buffer_get_modifier (MetaDrmBuffer *buffer) { return META_DRM_BUFFER_GET_CLASS (buffer)->get_modifier (buffer); diff --git a/src/backends/native/meta-drm-buffer.h b/src/backends/native/meta-drm-buffer.h index 801156cec..c393d4fee 100644 --- a/src/backends/native/meta-drm-buffer.h +++ b/src/backends/native/meta-drm-buffer.h @@ -63,7 +63,7 @@ uint32_t meta_drm_buffer_get_format (MetaDrmBuffer *buffer); int meta_drm_buffer_get_offset (MetaDrmBuffer *buffer, int plane); -uint32_t meta_drm_buffer_get_modifier (MetaDrmBuffer *buffer); +uint64_t meta_drm_buffer_get_modifier (MetaDrmBuffer *buffer); gboolean meta_drm_buffer_supports_fill_timings (MetaDrmBuffer *buffer); diff --git a/src/backends/native/meta-renderer-native.c b/src/backends/native/meta-renderer-native.c index 28ea94e9d..41bf04d66 100644 --- a/src/backends/native/meta-renderer-native.c +++ b/src/backends/native/meta-renderer-native.c @@ -906,7 +906,7 @@ meta_renderer_native_create_dma_buf (CoglRenderer *cogl_renderer, uint32_t stride; uint32_t offset; uint32_t bpp; - uint32_t modifier; + uint64_t modifier; uint32_t format; CoglFramebuffer *dmabuf_fb; CoglDmaBufHandle *dmabuf_handle;