Mir

segfault on first call to GLESv2 after dlopen()-ing android platform

Bug #1577392 reported by Kevin DuBois
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Canonical System Image
New
Undecided
Unassigned
Mir
Won't Fix
High
Unassigned
libhybris
Fix Committed
High
Simon Fels
qtmir (Ubuntu)
Incomplete
Undecided
Unassigned

Bug Description

If you try to build an executable that loads in the android platform, using some of the display classes will fail when trying to call gl* functions due to missing GL linkange in mirplatform. LD_PRELOAD'ing the gl libraries is a workaround, but we should fix this.

Tags: android
Revision history for this message
Kevin DuBois (kdub) wrote :

added qtmir, as I'm guessing this is what's affecting the operation of qml-demo-shell (currently segfaults)

Revision history for this message
Gerry Boland (gerboland) wrote :

This still segv for me after it loads android:

QT_QPA_PLATFORM=mirserver MIR_SERVER_NAME=session-0 MIR_SOCKET=/run/mir_socket MIR_HOST_SERVER_FILE=$XDG_RUNTIME_DIR/mir_socket LD_PRELOAD=/usr/lib/arm-linux-gnueabihf/libhybris-egl/libEGL.so.1.0.0:/usr/lib/arm-linux-gnueabihf/libhybris-egl/libGLESv2.so.2.0.0 qmlscene qml-demo-shell.qml

I tried to preload all the gl related libs

Changed in qtmir:
status: New → Incomplete
Revision history for this message
Kevin DuBois (kdub) wrote :

Was digging some more on this bug, I think its hybris + gnu_indirect_functions + dlopen() that's the problem. Testing out a fix I made against hybris.

Changed in mir:
assignee: nobody → Kevin DuBois (kdub)
milestone: 0.24.0 → none
status: New → In Progress
status: In Progress → Incomplete
status: Incomplete → Won't Fix
summary: - android platform missing GL linkage
+ segfault on first call to GLESv2android platform missing GL linkage
summary: - segfault on first call to GLESv2android platform missing GL linkage
+ segfault on first call to GLESv2 after dlopen()-ing android platform
Changed in libhybris:
status: New → In Progress
assignee: nobody → Kevin DuBois (kdub)
Changed in mir:
assignee: Kevin DuBois (kdub) → nobody
Revision history for this message
Kevin DuBois (kdub) wrote :

not sure where hybris tracks its bugs, filed https://github.com/libhybris/libhybris/issues/315

Revision history for this message
Kevin DuBois (kdub) wrote :

figured out that https://github.com/libhybris/libhybris/commit/a38512b703c4a3af6a3a34276946262c4bb46393 is the commit that we need to pull into the hybris package. Given the priority, seems best to just wait (next pull should be sometime in ota12)

Changed in libhybris:
status: In Progress → Confirmed
Revision history for this message
Kevin DuBois (kdub) wrote :

moved to 'confirmed' pending upstream trickling down.

Simon Fels (morphis)
Changed in libhybris:
status: Confirmed → Fix Committed
assignee: Kevin DuBois (kdub) → Simon Fels (morphis)
importance: Undecided → High
Michał Sawicz (saviq)
affects: qtmir → qtmir (Ubuntu)
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.