Hello community,
here is the log from the commit of package libqt5-qtwebengine for
openSUSE:Factory checked in at 2018-01-16 09:38:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libqt5-qtwebengine (Old)
and /work/SRC/openSUSE:Factory/.libqt5-qtwebengine.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libqt5-qtwebengine"
Tue Jan 16 09:38:51 2018 rev:29 rq:564047 version:5.10.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/libqt5-qtwebengine/libqt5-qtwebengine.changes
2017-12-23 12:14:48.653261745 +0100
+++
/work/SRC/openSUSE:Factory/.libqt5-qtwebengine.new/libqt5-qtwebengine.changes
2018-01-16 09:39:03.167007066 +0100
@@ -1,0 +2,6 @@
+Fri Jan 12 19:10:53 UTC 2018 - [email protected]
+
+- Also work around crashes on wayland by disabling the GPU by default
(boo#1060990):
+ * disable-gpu-when-using-nouveau-boo-1005323.diff
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libqt5-qtwebengine.spec ++++++
--- /var/tmp/diff_new_pack.cyAFsc/_old 2018-01-16 09:39:08.518756560 +0100
+++ /var/tmp/diff_new_pack.cyAFsc/_new 2018-01-16 09:39:08.518756560 +0100
@@ -64,7 +64,7 @@
Source1: baselibs.conf
# PATCH-FIX-UPSTREAM armv6-ffmpeg-no-thumb.patch - Fix ffmpeg configuration
for armv6
Patch1: armv6-ffmpeg-no-thumb.patch
-# PATCH-FIX-UPSTREAM disable-gpu-when-using-nouveau-boo-1005323.diff -- Detect
nouveau opengl drivers and disable gpu usage to work around nouveau crashing
+# PATCH-FIX-UPSTREAM disable-gpu-when-using-nouveau-boo-1005323.diff
Patch2: disable-gpu-when-using-nouveau-boo-1005323.diff
# PATCH-FIX-UPSTREAM harmony-fix.diff -- Show the patent-free LCD rendering.
Without this patch, only grayscale rendering is used. (for freetype-2.8.1)
boo#1061344
Patch5: harmony-fix.diff
++++++ disable-gpu-when-using-nouveau-boo-1005323.diff ++++++
--- /var/tmp/diff_new_pack.cyAFsc/_old 2018-01-16 09:39:08.566754314 +0100
+++ /var/tmp/diff_new_pack.cyAFsc/_new 2018-01-16 09:39:08.566754314 +0100
@@ -1,3 +1,12 @@
+From: Antonio Larrosa <[email protected]>
+Subject: Disable GPU when using nouveau or running on wayland
+References: boo#1005323, boo#1060990
+
+Qt WebEngine uses multi-threaded OpenGL, which nouveau does not support.
+It also crashes when running on wayland, the cause is not yet known.
+Work around these issues by not doing GPU-accelerated rendering in such
+cases.
+
Index: qtwebengine-everywhere-src-5.10.0/src/core/web_engine_context.cpp
===================================================================
--- qtwebengine-everywhere-src-5.10.0.orig/src/core/web_engine_context.cpp
@@ -50,12 +59,21 @@
} // namespace
namespace QtWebEngineCore {
-@@ -378,6 +412,17 @@ WebEngineContext::WebEngineContext()
-
+@@ -379,6 +413,27 @@ WebEngineContext::WebEngineContext()
const char *glType = 0;
#ifndef QT_NO_OPENGL
+
+ bool disableGpu = qEnvironmentVariableIsSet("QT_WEBENGINE_DISABLE_GPU");
+
++ if (!qEnvironmentVariableIsSet("QT_WEBENGINE_DISABLE_WAYLAND_WORKAROUND")
&& platform.startsWith("wayland", Qt::CaseInsensitive))
++ {
++ qWarning() << "Running on wayland. Qt WebEngine will disable usage of
the GPU.\n"
++ "Note: you can set the
QT_WEBENGINE_DISABLE_WAYLAND_WORKAROUND\n"
++ "environment variable before running this application,
but this is \n"
++ "not recommended since this usually causes applications
to crash.";
++ disableGpu = true;
++ }
++
+ if (!qEnvironmentVariableIsSet("QT_WEBENGINE_DISABLE_NOUVEAU_WORKAROUND")
&& openGLVendor() == QStringLiteral("nouveau"))
+ {
+ qWarning() << "Nouveau openGL driver detected. Qt WebEngine will
disable usage of the GPU.\n"
@@ -65,10 +83,11 @@
+ "Nouveau openGL drivers don't support multithreaded
rendering";
+ disableGpu = true;
+ }
-
++
bool tryGL =
!usingANGLE()
-@@ -389,7 +434,7 @@ WebEngineContext::WebEngineContext()
+ && (!usingSoftwareDynamicGL()
+@@ -389,7 +444,7 @@ WebEngineContext::WebEngineContext()
|| enableWebGLSoftwareRendering
#endif
)