1
0
Fork 0
mutter-performance-source/src/backends/native
Pekka Paalanen 9cd3b07472 egl: Introduce meta_egl_create_dmabuf_image
This bit of code was more or less duplicated in meta-renderer-native-gles3.c
and meta-wayland-dma-buf.c. Start consolidating the two implementations by
moving the *-gles3.c function into meta-egl.c and generalizing it so it could
also accommodate the meta-wayland-dma-buf.c usage.

The workaround in the *-gles3.c implementation is moved to the caller. It is
the caller's responsibility to check for the existence of the appropriate EGL
extensions.

Commit 6f59e4858e worked around the lack of
EGL_EXT_image_dma_buf_import_modifiers with the assumption that if the modifier
is linear, there is no need to pass it into EGL. The problem is that not
passing a modifier explicitly to EGL invokes implementation-defined behaviour,
so we should not have that workaround in meta-egl.c.

This patch intends to be pure refactoring, no behavioral changes. The one
change is the addition of g_assert to catch overwriting arbitrary memory.

https://gitlab.gnome.org/GNOME/mutter/merge_requests/615
2019-07-10 08:15:02 +00:00
..
dbus-utils.c Clean up include macros mess 2018-11-06 17:17:36 +01:00
dbus-utils.h launcher: Replace mutter-launch with logind integration 2014-05-19 15:09:23 -04:00
gen-default-modes.py build: Don't hardcode the path of python3 2018-11-18 14:25:35 +08:00
meta-backend-native-private.h backends/native: Implement support for pointer barriers 2015-01-19 02:27:59 -08:00
meta-backend-native-types.h udev: Add helpers to list DRM devices 2019-06-20 13:31:55 +00:00
meta-backend-native.c backends: Move numlock persistence handling here 2019-06-24 18:24:57 +02:00
meta-backend-native.h backends/native: Add basic KMS abstraction building blocks 2019-06-20 13:31:55 +00:00
meta-barrier-native.c Use a consistent style for enum braces 2019-02-28 09:31:01 +01:00
meta-barrier-native.h Use G_DECLARE_DERIVABLE/FINAL_TYPE on some types 2018-12-21 19:48:50 +00:00
meta-clutter-backend-native.c Add some gtk-doc comments. 2019-01-06 21:57:16 +01:00
meta-clutter-backend-native.h Clean up include macros mess 2018-11-06 17:17:36 +01:00
meta-crtc-kms.c backends/native: Add some KMS debug logging 2019-06-20 13:31:56 +00:00
meta-crtc-kms.h backend/native: Add and use transactional KMS API 2019-06-20 13:31:56 +00:00
meta-cursor-renderer-native.c backend: Move GPU ownership from the monitor manager to the backend 2019-06-20 13:31:55 +00:00
meta-cursor-renderer-native.h Clean up include macros mess 2018-11-06 17:17:36 +01:00
meta-drm-buffer-dumb.c drm-buffer: Make the "types" actual types 2019-05-21 14:55:38 +00:00
meta-drm-buffer-dumb.h drm-buffer: Make the "types" actual types 2019-05-21 14:55:38 +00:00
meta-drm-buffer-gbm.c drm-buffer: Make the "types" actual types 2019-05-21 14:55:38 +00:00
meta-drm-buffer-gbm.h drm-buffer: Make the "types" actual types 2019-05-21 14:55:38 +00:00
meta-drm-buffer.c drm-buffer: Make the "types" actual types 2019-05-21 14:55:38 +00:00
meta-drm-buffer.h drm-buffer: Make the "types" actual types 2019-05-21 14:55:38 +00:00
meta-gpu-kms.c backend/native: Add and use transactional KMS API 2019-06-20 13:31:56 +00:00
meta-gpu-kms.h backend/native: Add and use transactional KMS API 2019-06-20 13:31:56 +00:00
meta-input-settings-native.c Clean up include macros mess 2018-11-06 17:17:36 +01:00
meta-input-settings-native.h Clean up include macros mess 2018-11-06 17:17:36 +01:00
meta-kms-connector-private.h output/kms: Outsource connector state fetching to MetaKmsConnector 2019-06-20 13:31:56 +00:00
meta-kms-connector.c backend/native: Add and use transactional KMS API 2019-06-20 13:31:56 +00:00
meta-kms-connector.h backend/native: Add and use transactional KMS API 2019-06-20 13:31:56 +00:00
meta-kms-crtc-private.h crtc/kms: Outsource CRTC state fetching to MetaKmsCrtc 2019-06-20 13:31:55 +00:00
meta-kms-crtc.c monitor-manager/kms: Use KMS abstraction to get and set CRTC gamma 2019-06-24 13:36:10 +00:00
meta-kms-crtc.h monitor-manager/kms: Use KMS abstraction to get and set CRTC gamma 2019-06-24 13:36:10 +00:00
meta-kms-device-private.h crtc/kms: Outsource CRTC state fetching to MetaKmsCrtc 2019-06-20 13:31:55 +00:00
meta-kms-device.c kms-impl-device: Fail if we can't enable universal planes 2019-07-01 11:55:47 +02:00
meta-kms-device.h backend/native: Add and use transactional KMS API 2019-06-20 13:31:56 +00:00
meta-kms-impl-device.c kms-impl-device: Fail up front if we can't retrieve DRM resources 2019-07-01 11:56:08 +02:00
meta-kms-impl-device.h kms-impl-device: Fail if we can't enable universal planes 2019-07-01 11:55:47 +02:00
meta-kms-impl-simple.c monitor-manager/kms: Use KMS abstraction to get and set CRTC gamma 2019-06-24 13:36:10 +00:00
meta-kms-impl-simple.h backends/native: Add basic KMS abstraction building blocks 2019-06-20 13:31:55 +00:00
meta-kms-impl.c backend/native: Add and use transactional KMS API 2019-06-20 13:31:56 +00:00
meta-kms-impl.h backend/native: Add and use transactional KMS API 2019-06-20 13:31:56 +00:00
meta-kms-page-flip-private.h backend/native: Add and use transactional KMS API 2019-06-20 13:31:56 +00:00
meta-kms-page-flip.c backend/native: Add and use transactional KMS API 2019-06-20 13:31:56 +00:00
meta-kms-plane.c kms-plane: Include <drm_fourcc.h> 2019-06-28 13:25:15 -03:00
meta-kms-plane.h backend/native: Add and use transactional KMS API 2019-06-20 13:31:56 +00:00
meta-kms-private.h backend/native: Add and use transactional KMS API 2019-06-20 13:31:56 +00:00
meta-kms-types.h backend/native: Add and use transactional KMS API 2019-06-20 13:31:56 +00:00
meta-kms-update-private.h monitor-manager/kms: Use KMS abstraction to get and set CRTC gamma 2019-06-24 13:36:10 +00:00
meta-kms-update.c monitor-manager/kms: Use KMS abstraction to get and set CRTC gamma 2019-06-24 13:36:10 +00:00
meta-kms-update.h backend/native: Add and use transactional KMS API 2019-06-20 13:31:56 +00:00
meta-kms-utils.c backend/native: Move some KMS utilities to its own file 2019-06-20 13:31:56 +00:00
meta-kms-utils.h backend/native: Move some KMS utilities to its own file 2019-06-20 13:31:56 +00:00
meta-kms.c kms-update: Seal updates when posting them 2019-06-20 13:31:56 +00:00
meta-kms.h backend/native: Add and use transactional KMS API 2019-06-20 13:31:56 +00:00
meta-launcher.c launcher: Explicitly look up object path for seat 2019-05-21 16:43:09 +02:00
meta-launcher.h backends/native: Move KMS fd management to monitor manager 2017-10-05 16:18:43 -04:00
meta-monitor-manager-kms.c monitor-manager/kms: Use KMS abstraction to get and set CRTC gamma 2019-06-24 13:36:10 +00:00
meta-monitor-manager-kms.h backends/native: Move primary_gpu into MetaRendererNative 2019-01-13 10:30:44 +00:00
meta-output-kms.c backends/native: Add some KMS debug logging 2019-06-20 13:31:56 +00:00
meta-output-kms.h backend/native: Add and use transactional KMS API 2019-06-20 13:31:56 +00:00
meta-renderer-native-gles3.c egl: Introduce meta_egl_create_dmabuf_image 2019-07-10 08:15:02 +00:00
meta-renderer-native-gles3.h renderer/native: remove meta_renderer_native_gles3_read_pixels 2018-11-19 22:53:13 +00:00
meta-renderer-native.c renderer/native: Discard page flip retries when rebuilding views 2019-06-27 19:08:01 +02:00
meta-renderer-native.h renderer/native: Queue mode reset from new rebuild_views vfunc 2019-06-27 19:08:01 +02:00
meta-stage-native.c renderer/native: Queue mode reset from new rebuild_views vfunc 2019-06-27 19:08:01 +02:00
meta-stage-native.h backends/native: Stop supporting stage views being disabled 2017-10-05 18:08:09 -04:00
meta-udev.c backend: Move GPU ownership from the monitor manager to the backend 2019-06-20 13:31:55 +00:00
meta-udev.h backend: Move GPU ownership from the monitor manager to the backend 2019-06-20 13:31:55 +00:00