import egl-wayland-1.1.7-1.el8

This commit is contained in:
CentOS Sources 2021-11-09 05:02:02 -05:00 committed by Stepan Oksanichenko
parent 8cf9cbb091
commit 281f670164
5 changed files with 8 additions and 67 deletions

View File

@ -1 +1 @@
e835e93a9973545b16742efde5168aa0ba607e29 SOURCES/egl-wayland-1.1.5.tar.gz
e86ff44042ba075bdd5613ced4180f4c1630f9d1 SOURCES/egl-wayland-1.1.7.tar.gz

2
.gitignore vendored
View File

@ -1 +1 @@
SOURCES/egl-wayland-1.1.5.tar.gz
SOURCES/egl-wayland-1.1.7.tar.gz

View File

@ -1,36 +0,0 @@
From 9558ec02d0f7bbf30dc1f9ee4c0b06c9b0c49afe Mon Sep 17 00:00:00 2001
From: Erik Kurzinger <ekurzinger@nvidia.com>
Date: Fri, 14 Aug 2020 07:27:58 -0700
Subject: [PATCH] suspend lock in eglBindWaylandDisplayWL
When binding an external EGL display to a Wayland display, core EGL will
need to translate the external handle to an internal handle before
performing any API calls. This may occur, for example, when running a
nested Wayland compositor where the EGL display will be using
EGL_PLATFORM_WAYLAND as opposed to EGL_PLATFORM_DEVICE. Translating this
handle involves calling wlEglGetInternalHandleExport, which attempts to
acquire the external API lock. However, during eglBindWaylandDisplayWL this
lock is already held. As a result, when wl_eglstream_display_bind calls
eglQueryString to retrieve the extension string, this lock acquisition will
fail causing a crash.
To fix this, wl_eglstream_display_bind should temporarily suspend the API
lock before calling eglQueryString.
---
src/wayland-eglstream-server.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/wayland-eglstream-server.c b/src/wayland-eglstream-server.c
index c37f8e6..331ad32 100644
--- a/src/wayland-eglstream-server.c
+++ b/src/wayland-eglstream-server.c
@@ -308,7 +308,9 @@ wl_eglstream_display_bind(WlEglPlatformData *data,
wlStreamDpy->eglDisplay = eglDisplay;
wlStreamDpy->caps_override = 0;
+ wlExternalApiUnlock();
exts = data->egl.queryString(eglDisplay, EGL_EXTENSIONS);
+ wlExternalApiLock();
#define CACHE_EXT(_PREFIX_, _NAME_) \
wlStreamDpy->exts._NAME_ = \

View File

@ -1,24 +0,0 @@
From 9c9c4c684983f7b0821f516f8821118170a785ea Mon Sep 17 00:00:00 2001
From: Erik Kurzinger <ekurzinger@nvidia.com>
Date: Fri, 14 Aug 2020 14:17:25 -0700
Subject: [PATCH] include wayland-thread.h from wayland-eglstream-server.c
The previous commit referenced functions declared in wayland-thread.h
from wayland-eglstream-server.c, but neglected to add the required
include directive.
---
src/wayland-eglstream-server.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/wayland-eglstream-server.c b/src/wayland-eglstream-server.c
index 331ad32..a62d7db 100644
--- a/src/wayland-eglstream-server.c
+++ b/src/wayland-eglstream-server.c
@@ -40,6 +40,7 @@
#include "wayland-eglstream.h"
#include "wayland-eglswap.h"
#include "wayland-eglutils.h"
+#include "wayland-thread.h"
#define MASK(_VAL_) (1 << (_VAL_))

View File

@ -1,14 +1,12 @@
Name: egl-wayland
Version: 1.1.5
Release: 3%{?dist}
Version: 1.1.7
Release: 1%{?dist}
Summary: Wayland EGL External Platform library
License: MIT
URL: https://github.com/NVIDIA/%{name}
Source0: %url/archive/%{version}/%{name}-%{version}.tar.gz
Source1: 10_nvidia_wayland.json
Patch0: %url/commit/9558ec02d0f7bbf30dc1f9ee4c0b06c9b0c49afe.patch
Patch1: %url/commit/9c9c4c684983f7b0821f516f8821118170a785ea.patch
BuildRequires: meson
BuildRequires: libtool
@ -62,11 +60,14 @@ find %{buildroot} -name '*.la' -exec rm -f {} ';'
%files devel
%{_libdir}/libnvidia-egl-wayland.so
%{_datadir}/pkgconfig/wayland-eglstream.pc
%{_libdir}/pkgconfig/wayland-eglstream.pc
%{_datadir}/pkgconfig/wayland-eglstream-protocols.pc
%{_datadir}/wayland-eglstream/
%changelog
* Thu Jul 1 2021 Olivier Fourdan <ofourdan@redhat.com> - 1.1.7-1
- Update to 1.1.7 (#1975862)
* Fri Aug 14 2020 Leigh Scott <leigh123linux@gmail.com> - 1.1.5-3
- Add upstream patch to address rhbz#1842473