GNOME Bugzilla – Bug 779112
MetaRendererNative: Properly handle EGLOutput acquire errors
Last modified: 2017-03-04 10:35:50 UTC
Whenever an EGLOutput consumer is temporary unable to handle eglStreamConsumerAcquire() operations (e.g. during a VT-switch), an EGL_RESOURCE_BUSY_EXT error is generated. These changes add the appropriate error handling to flip_egl_stream() in order to recover from such errors.
Created attachment 346524 [details] [review] egl: Pass EGL errors via custom error domain Introduce META_EGL_ERROR and have the error code be EGL error codes.
Created attachment 346525 [details] [review] egl: Add stream-related error descriptions This change adds descriptions for the following errors to get_egl_error_str(): - EGL_BAD_STREAM_KHR - EGL_BAD_STATE_KHR - EGL_BAD_DEVICE_EXT - EGL_BAD_OUTPUT_LAYER_EXT
Created attachment 346526 [details] [review] egl: Add EGL_RESOURCE_BUSY_EXT error This change adds both the error code and description for EGL_RESOURCE_BUSY_EXT, recently added to the EGL_EXT_stream_acquire_mode extension: https://github.com/aritger/eglstreams-kms-example/blob/master/proposed-extensions/EGL_EXT_stream_acquire_mode.txt
Created attachment 346527 [details] [review] MetaRendererNative: Properly handle EGLOutput acquire errors Whenever an EGLOutput consumer is temporary unable to handle eglStreamConsumerAcquire() operations (e.g. during a VT-switch), an EGL_RESOURCE_BUSY_EXT error is generated. This change adds the appropriate error handling to flip_egl_stream() in order to recover from such errors.
Looks good to me; pushing. Attachment 346524 [details] pushed as d8ee96c - egl: Pass EGL errors via custom error domain Attachment 346525 [details] pushed as 09fa27c - egl: Add stream-related error descriptions Attachment 346526 [details] pushed as 58043cb - egl: Add EGL_RESOURCE_BUSY_EXT error Attachment 346527 [details] pushed as 4fdc551 - MetaRendererNative: Properly handle EGLOutput acquire errors