Bug 229491 - www/webkit2-gtk3: certain webpages the browser shows a blank page (Cannot create EGL window surface)
Summary: www/webkit2-gtk3: certain webpages the browser shows a blank page (Cannot cre...
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: amd64 Any
: --- Affects Only Me
Assignee: freebsd-gnome (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-07-03 12:55 UTC by c0141
Modified: 2019-03-23 15:26 UTC (History)
6 users (show)

See Also:
bugzilla: maintainer-feedback? (gnome)


Attachments
disable glesv2 (818 bytes, patch)
2019-03-03 01:01 UTC, Ivan Rozhuk
rozhuk.im: maintainer-approval?
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description c0141 2018-07-03 12:55:07 UTC
FreeBSD 11.x (both 11.1 and 11.2) amd64.
nvidia-driver-340-340.107
2 x Nvidia GT218.
Three monitors.

Tested with luakit and epiphany.

Tested web pages:
dr.dk
google.com
youtube.com

When I access certain webpages the browser shows a blank page. In the terminal where I started the browser I see:

Cannot create EGL window surface: EGL_BAD_MATCH

With epiphany the default home page which show icons of recently visited web pages I there was actually a screenshot of the webpage so epiphany gets the content but is unable to show it. This corresponds with the fact that tcpdump shows the web traffic. I noticed that that both google.com and dr.dk displays a in window popup. User consent stuff.

Other web pages works well in epiphany and luakit.

When using firefox or chrome there are no issues.

I am guessing it has something to do with GL and the nvidia driver.
The Khronos documentation states something about version mismatch.
Comment 1 c0141 2018-07-03 13:12:10 UTC
Finally found a workaround.

If I start the browser like this

$ WEBKIT_DISABLE_COMPOSITING_MODE=1 luakit|epiphany

Webkit will have GL/hardware acceleration disabled.

This could be in the messages for the different browsers.
Comment 2 Alan Braslau 2018-09-12 01:34:29 UTC
(In reply to c0141 from comment #1)

I confirm the error using the nvidia-driver-340-340.107 and webkit2-gtk3-2.20.3_1 using luakit as well as the workaround.

Alan
Comment 3 Raphael Ahrens 2019-01-10 10:45:08 UTC
I can also confirm this on FreeBSD 12.0 amd64 with

 * webkit2-gtk3-2.22.5
 * nvidia-driver-390.87_1

I spotted the error with liferea-1.12.6_1 looking at heise.de.

Running liferea with

    WEBKIT_DISABLE_COMPOSITING_MODE=1 liferea

does indeed help.
Comment 4 fiziologus 2019-01-15 11:18:59 UTC
Remove ENABLE_GLES2 from Makefile. This part wayland support and cause this error.
I send this to @gnome long ago, but no response.
Comment 5 Ivan Rozhuk 2019-03-03 01:01:08 UTC
Created attachment 202512 [details]
disable glesv2

I make a patch.
Comment 6 commit-hook freebsd_committer freebsd_triage 2019-03-23 15:25:52 UTC
A commit references this bug:

Author: kwm
Date: Sat Mar 23 15:25:23 UTC 2019
New revision: 496665
URL: https://svnweb.freebsd.org/changeset/ports/496665

Log:
  Update webkit2-gtk3 to 2.24.0.

  Disable GLES support (upstream default is off), this should fix display
  issues with nvidia cards. [1]

  PR:		229491 [1]
  Reported by:	c0141@xbsd.net and others
  Obtained from:	gnome development repo

Changes:
  head/www/webkit2-gtk3/Makefile
  head/www/webkit2-gtk3/distinfo
  head/www/webkit2-gtk3/files/patch-CMakeLists.txt
  head/www/webkit2-gtk3/files/patch-Source_JavaScriptCore_assembler_ARM64Assembler.h
  head/www/webkit2-gtk3/files/patch-Source_JavaScriptCore_assembler_ARMv7Assembler.h
  head/www/webkit2-gtk3/files/patch-Source_JavaScriptCore_offlineasm_arm64.rb
  head/www/webkit2-gtk3/files/patch-Source_JavaScriptCore_offlineasm_arm64_rb
  head/www/webkit2-gtk3/files/patch-Source_WTF_wtf_Optional.h
  head/www/webkit2-gtk3/files/patch-Source_WTF_wtf_Platform.h
  head/www/webkit2-gtk3/files/patch-Source_WebCore_PAL_pal_PlatformGTK.cmake
  head/www/webkit2-gtk3/files/patch-Source_WebCore_platform_network_soup_SoupNetworkSession.h
  head/www/webkit2-gtk3/files/patch-Source_WebCore_platform_text_TextCodec.cpp
  head/www/webkit2-gtk3/files/patch-Source__JavaScriptCore__assembler__ARMAssembler.h
  head/www/webkit2-gtk3/files/patch-Source_bmalloc_bmalloc_BPlatform.h
  head/www/webkit2-gtk3/pkg-plist