Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix rendering on native ports #1043

Open
llewelld opened this issue Nov 22, 2023 · 2 comments
Open

Fix rendering on native ports #1043

llewelld opened this issue Nov 22, 2023 · 2 comments
Assignees

Comments

@llewelld
Copy link
Member

The rendering pipeline now works on hubris devices (see #1020), but on native devices (e.g. the PinePhone) the browser crashes.

This isn't totally unexpected and likely has to do with the way surfaces are handled with wayland. This caused problems previously as well. It's also likely to cause problems for WebViews, so needs to be fixed.

Notes copied over from #1020:

The rendering pipeline has changed significantly between ESR 78 and ESR 91. The GLES rendering code was removed and switched for a Web Render pipeline instead.

Some of the relevant upstream changes include the following:

  1. Support for multiple EglDisplays: D85496. The EglDisplay is passed in from QtMozEmbed, so this causes some problems.
  2. Out of process WebGL compositing: D75055. This removes GLSCreenBuffer completely in favour of a new much sparser SwapChain. This really messes up our renderer.

See for example:

  1. 51e18eb9b16ee94a775d3d4f1f333c11e306368e.
  2. d59d44a5bccafc714a2e380197c8cb9334107eb1.
@DrYak
Copy link

DrYak commented Oct 8, 2024

I would be very interested in ESR91 being deployable to PinePhone Pro.

I can do some tests (when time and work schedule permits), as I'll be daily driving a freshly repaired Xperia 10iii (new USB-C daughterboard) and can do testing on my PinePhone Pro (also freshly repaired: replaced motherboard).

@piggz
Copy link

piggz commented Oct 27, 2024

Crash what using pinetab2 with ESR91 browser

[W] unknown:0 - QWaylandGLContext::makeCurrent: eglError: 3008, this: 0xaaaaab0c23e0 

[New LWP 2068]
[LWP 2068 exited]
[New LWP 2069]
sailfish-browser: ../src/wayland-client.c:2377: wl_proxy_set_queue: Assertion `proxy->display == queue->display' failed.

Thread 37 "Compositor" received signal SIGABRT, Aborted.
[Switching to LWP 2059]
0x0000ffffef0ce7ec in raise () from /lib64/libc.so.6
(gdb) bt
#0  0x0000ffffef0ce7ec in raise () from /lib64/libc.so.6
#1  0x0000ffffef0b7d20 in abort () from /lib64/libc.so.6
#2  0x0000ffffef0c6c98 in ?? () from /lib64/libc.so.6
#3  0x0000ffffef0c6cfc in __assert_fail () from /lib64/libc.so.6
#4  0x0000ffffed36eefc in wl_proxy_set_queue () from /usr/lib64/libwayland-client.so.0
#5  0x0000ffffeecf001c in ?? () from /usr/lib64/libEGL.so.1
#6  0x0000ffffeece70b4 in ?? () from /usr/lib64/libEGL.so.1
#7  0x0000ffffeecd7cc0 in ?? () from /usr/lib64/libEGL.so.1
#8  0x0000fffff1fc04c8 in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#9  0x0000fffff1fe7094 in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#10 0x0000fffff1fe72f8 in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#11 0x0000fffff1fe7558 in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#12 0x0000fffff1fe7a70 in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#13 0x0000fffff205d484 in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#14 0x0000fffff206e960 in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#15 0x0000fffff21a1728 in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#16 0x0000fffff21b458c in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#17 0x0000fffff21b4708 in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#18 0x0000fffff4a83204 in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#19 0x0000fffff1abf128 in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#20 0x0000fffff1afb514 in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#21 0x0000fffff1a297d4 in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#22 0x0000fffff1a35804 in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#23 0x0000fffff1a3740c in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#24 0x0000fffff15d4730 in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#25 0x0000fffff15c23ec in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#26 0x0000fffff1a1af9c in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#27 0x0000fffff19d3b78 in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#28 0x0000fffff15d3cb0 in ?? () from /usr/lib64/xulrunner-qt5-91.9.1/libxul.so
#29 0x0000fffff7cd6bf4 in ?? () from /usr/lib64/libnspr4.so
#30 0x0000fffff05d3b98 in ?? () from /lib64/libpthread.so.0
#31 0x0000ffffef17b7cc in ?? () from /lib64/libc.so.6
(gdb) 

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants