Update to 1.21.0
* Add GPG verification
This commit is contained in:
parent
65647ec64e
commit
b775661bbf
2
.gitignore
vendored
2
.gitignore
vendored
@ -58,3 +58,5 @@
|
|||||||
/wayland-1.18.0.tar.xz
|
/wayland-1.18.0.tar.xz
|
||||||
/wayland-1.19.0.tar.xz
|
/wayland-1.19.0.tar.xz
|
||||||
/wayland-1.20.0.tar.xz
|
/wayland-1.20.0.tar.xz
|
||||||
|
/wayland-1.21.0.tar.xz
|
||||||
|
/wayland-1.21.0.tar.xz.sig
|
||||||
|
@ -1,74 +0,0 @@
|
|||||||
From 5c0a466e1757fc74dba32fdb1a9ad90eda8b4cdb Mon Sep 17 00:00:00 2001
|
|
||||||
From: Olivier Fourdan <ofourdan@redhat.com>
|
|
||||||
Date: Mon, 10 Jan 2022 15:10:07 +0100
|
|
||||||
Subject: [PATCH] shm: Close file descriptors not needed
|
|
||||||
|
|
||||||
Commit 5a981ee8 implemented a fallback path for platforms which do not
|
|
||||||
support mremap() such as FreeBSD.
|
|
||||||
|
|
||||||
To do so, the file descriptor for the mmap() is not closed immediately
|
|
||||||
but instead kept as long as the pool exists.
|
|
||||||
|
|
||||||
That induces more file descriptors kept open for longer, which in turn
|
|
||||||
may cause problems as wl_shm may be using a lot of file descriptors,
|
|
||||||
especially with Xwayland which can create a lot of pixmaps on behalf of
|
|
||||||
its X11 clients.
|
|
||||||
|
|
||||||
For platforms where mremap() is available, keeping those file
|
|
||||||
descriptors opened is a bit of a waste and may cause exhaustion of file
|
|
||||||
descriptors sooner that before commit 5a981ee8.
|
|
||||||
|
|
||||||
Only keep the mmap() file descriptor open on platforms which do not
|
|
||||||
implement mremap() and close it immediately as before on others.
|
|
||||||
|
|
||||||
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
|
|
||||||
Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1283
|
|
||||||
---
|
|
||||||
src/wayland-shm.c | 8 ++++++++
|
|
||||||
1 file changed, 8 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/src/wayland-shm.c b/src/wayland-shm.c
|
|
||||||
index 28c550d..c4cd390 100644
|
|
||||||
--- a/src/wayland-shm.c
|
|
||||||
+++ b/src/wayland-shm.c
|
|
||||||
@@ -65,10 +65,12 @@ struct wl_shm_pool {
|
|
||||||
char *data;
|
|
||||||
ssize_t size;
|
|
||||||
ssize_t new_size;
|
|
||||||
+#ifndef MREMAP_MAYMOVE
|
|
||||||
/* The following three fields are needed for mremap() emulation. */
|
|
||||||
int mmap_fd;
|
|
||||||
int mmap_flags;
|
|
||||||
int mmap_prot;
|
|
||||||
+#endif
|
|
||||||
bool sigbus_is_impossible;
|
|
||||||
};
|
|
||||||
|
|
||||||
@@ -153,7 +155,9 @@ shm_pool_unref(struct wl_shm_pool *pool, bool external)
|
|
||||||
return;
|
|
||||||
|
|
||||||
munmap(pool->data, pool->size);
|
|
||||||
+#ifndef MREMAP_MAYMOVE
|
|
||||||
close(pool->mmap_fd);
|
|
||||||
+#endif
|
|
||||||
free(pool);
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -344,10 +348,14 @@ shm_create_pool(struct wl_client *client, struct wl_resource *resource,
|
|
||||||
strerror(errno));
|
|
||||||
goto err_free;
|
|
||||||
}
|
|
||||||
+#ifndef MREMAP_MAYMOVE
|
|
||||||
/* We may need to keep the fd, prot and flags to emulate mremap(). */
|
|
||||||
pool->mmap_fd = fd;
|
|
||||||
pool->mmap_prot = prot;
|
|
||||||
pool->mmap_flags = flags;
|
|
||||||
+#else
|
|
||||||
+ close(fd);
|
|
||||||
+#endif
|
|
||||||
pool->resource =
|
|
||||||
wl_resource_create(client, &wl_shm_pool_interface, 1, id);
|
|
||||||
if (!pool->resource) {
|
|
||||||
--
|
|
||||||
2.35.1
|
|
||||||
|
|
BIN
emersion-gpg-key.asc
Normal file
BIN
emersion-gpg-key.asc
Normal file
Binary file not shown.
3
sources
3
sources
@ -1 +1,2 @@
|
|||||||
SHA512 (wayland-1.20.0.tar.xz) = e8a1f410994b947f850799bdd0d95a2429d8467f853e62a0ab3915a4e9fe130f8aa977e03715114ab740c6ec546edea63d275ce7f927d4f3029ea126e6a7d215
|
SHA512 (wayland-1.21.0.tar.xz) = 5575216d30fdf5c63caa6bcad071e15f2a4f3acb12df776806073f65db37a50b5b5b3cc7957c5497636f4ac01893e2eaab26e453ded44b287acde01762f5fdc3
|
||||||
|
SHA512 (wayland-1.21.0.tar.xz.sig) = 489351948ad10d54049a76c12763532aa0e16bd56bb246d9810011a902a3c701b0de3cf0dae58d8c06882b457728e7321016e9ee527202b2ef2d5fd1f032b818
|
||||||
|
18
wayland.spec
18
wayland.spec
@ -1,14 +1,13 @@
|
|||||||
Name: wayland
|
Name: wayland
|
||||||
Version: 1.20.0
|
Version: 1.21.0
|
||||||
Release: 5%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: Wayland Compositor Infrastructure
|
Summary: Wayland Compositor Infrastructure
|
||||||
|
|
||||||
License: MIT
|
License: MIT
|
||||||
URL: http://wayland.freedesktop.org/
|
URL: http://wayland.freedesktop.org/
|
||||||
Source0: http://wayland.freedesktop.org/releases/%{name}-%{version}.tar.xz
|
Source0: https://gitlab.freedesktop.org/%{name}/%{name}/-/releases/%{version}/downloads/%{name}-%{version}.tar.xz
|
||||||
|
Source1: https://gitlab.freedesktop.org/%{name}/%{name}/-/releases/%{version}/downloads/%{name}-%{version}.tar.xz.sig
|
||||||
# https://gitlab.freedesktop.org/wayland/wayland/-/merge_requests/203
|
Source2: emersion-gpg-key.asc
|
||||||
Patch0: 0001-shm-Close-file-descriptors-not-needed.patch
|
|
||||||
|
|
||||||
BuildRequires: gcc
|
BuildRequires: gcc
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: gcc-c++
|
||||||
@ -22,6 +21,9 @@ BuildRequires: meson
|
|||||||
BuildRequires: pkgconfig(libffi)
|
BuildRequires: pkgconfig(libffi)
|
||||||
BuildRequires: xmlto
|
BuildRequires: xmlto
|
||||||
|
|
||||||
|
# For origin certification
|
||||||
|
BuildRequires: gnupg2
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Wayland is a protocol for a compositor to talk to its clients as well as a C
|
Wayland is a protocol for a compositor to talk to its clients as well as a C
|
||||||
library implementation of that protocol. The compositor can be a standalone
|
library implementation of that protocol. The compositor can be a standalone
|
||||||
@ -67,6 +69,7 @@ Summary: Wayland server library
|
|||||||
Wayland server library
|
Wayland server library
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
|
%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}'
|
||||||
%autosetup -p1
|
%autosetup -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
@ -112,6 +115,9 @@ Wayland server library
|
|||||||
%{_libdir}/libwayland-server.so.0*
|
%{_libdir}/libwayland-server.so.0*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Jul 26 2022 Mike Rochefort <mroche@redhat.com> - 1.21.0-1
|
||||||
|
- Update to 1.21.0
|
||||||
|
|
||||||
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.20.0-5
|
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.20.0-5
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user