[packages/Mesa] add patch to fix segfault in PLD guest running under VirtualBox; rel 2
atler
atler at pld-linux.org
Wed Jul 4 13:01:36 CEST 2018
commit 4e00c32bcc43a6fcd88b0e1ae509afa66aa69b88
Author: Jan Palus <atler at pld-linux.org>
Date: Wed Jul 4 13:00:24 2018 +0200
add patch to fix segfault in PLD guest running under VirtualBox; rel 2
see https://bugs.freedesktop.org/show_bug.cgi?id=107098
Mesa-munmap_null.patch | 22 ++++++++++++++++++++++
Mesa.spec | 4 +++-
2 files changed, 25 insertions(+), 1 deletion(-)
---
diff --git a/Mesa.spec b/Mesa.spec
index c0c8565..bec3e4a 100644
--- a/Mesa.spec
+++ b/Mesa.spec
@@ -60,13 +60,14 @@ Summary: Free OpenGL implementation
Summary(pl.UTF-8): Wolnodostępna implementacja standardu OpenGL
Name: Mesa
Version: 18.1.2
-Release: 1
+Release: 2
License: MIT (core) and others - see license.html file
Group: X11/Libraries
Source0: ftp://ftp.freedesktop.org/pub/mesa/mesa-%{version}.tar.xz
# Source0-md5: a2d4f031eb6bd6111d44d84004476918
Patch0: %{name}-link.patch
Patch1: glvnd-fix-gl-dot-pc.patch
+Patch2: %{name}-munmap_null.patch
URL: http://www.mesa3d.org/
BuildRequires: autoconf >= 2.60
BuildRequires: automake
@@ -1268,6 +1269,7 @@ radv - eksperymentalny sterownik Vulkan dla GPU firmy AMD.
%if %{with glvnd}
%patch1 -p1
%endif
+%patch2 -p1
%build
%{__libtoolize}
diff --git a/Mesa-munmap_null.patch b/Mesa-munmap_null.patch
new file mode 100644
index 0000000..c8e37ce
--- /dev/null
+++ b/Mesa-munmap_null.patch
@@ -0,0 +1,22 @@
+diff -urN mesa-18.1.2.orig/src/gallium/winsys/sw/kms-dri/kms_dri_sw_winsys.c mesa-18.1.2/src/gallium/winsys/sw/kms-dri/kms_dri_sw_winsys.c
+--- mesa-18.1.2.orig/src/gallium/winsys/sw/kms-dri/kms_dri_sw_winsys.c 2018-07-04 12:45:31.057803594 +0200
++++ mesa-18.1.2/src/gallium/winsys/sw/kms-dri/kms_dri_sw_winsys.c 2018-07-04 12:47:02.030220461 +0200
+@@ -368,10 +368,14 @@
+ DEBUG_PRINT("KMS-DEBUG: unmapped buffer %u (was %p)\n", kms_sw_dt->handle, kms_sw_dt->mapped);
+ DEBUG_PRINT("KMS-DEBUG: unmapped buffer %u (was %p)\n", kms_sw_dt->handle, kms_sw_dt->ro_mapped);
+
+- munmap(kms_sw_dt->mapped, kms_sw_dt->size);
+- kms_sw_dt->mapped = NULL;
+- munmap(kms_sw_dt->ro_mapped, kms_sw_dt->size);
+- kms_sw_dt->ro_mapped = NULL;
++ if (kms_sw_dt->mapped != NULL) {
++ munmap(kms_sw_dt->mapped, kms_sw_dt->size);
++ kms_sw_dt->mapped = NULL;
++ }
++ if (kms_sw_dt->ro_mapped != NULL) {
++ munmap(kms_sw_dt->ro_mapped, kms_sw_dt->size);
++ kms_sw_dt->ro_mapped = NULL;
++ }
+ }
+
+ static struct sw_displaytarget *
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/Mesa.git/commitdiff/4e00c32bcc43a6fcd88b0e1ae509afa66aa69b88
More information about the pld-cvs-commit
mailing list