Black screen: Mir servers (unity8, unity-system-compositor, mir_demo*) all crash on start-up in libhybris [linker.c:27: android_dlopen: Assertion `0' failed.']

Bug #1578461 reported by Daniel van Vugt
30
This bug affects 4 people
Affects Status Importance Assigned to Milestone
Canonical System Image
Fix Released
Critical
John McAleely
Mir
Invalid
Critical
Unassigned
0.22
Invalid
Critical
Unassigned
0.23
Invalid
Critical
Unassigned
libhybris (Ubuntu)
Fix Committed
Critical
Simon Fels
mir (Ubuntu)
Invalid
Critical
Unassigned
unity-system-compositor (Ubuntu)
Invalid
Critical
Unassigned
unity8 (Ubuntu)
Invalid
Critical
Unassigned

Bug Description

Having mir-graphics-drivers-android9:amd64 installed prevents unity-system-compositor starting:

[2016-05-05 10:19:09.118354] mirplatform: Found graphics driver: mir:mesa-kms (version 0.22.0)
android_dlopen called but not implemented!
unity-system-compositor: linker.c:27: android_dlopen: Assertion `0' failed.

which was caused by:

sudo apt-add-repository ppa:ci-train-ppa-service/stable-phone-overlay

WORKING: hybris 0.1.0+git20151016+6d424c9-0ubuntu7
FAILING: hybris 0.1.0+git20151016+6d424c9-0ubuntu11

WORKAROUNDS:
 * Remove ppa:ci-train-ppa-service/stable-phone-overlay from your system to completely solve the problem; or
 * Don't use Unity8 -- other Mir servers will work after you remove package mir-graphics-drivers-android9:amd64 which is their last remaining dependency on libhybris.

description: updated
Changed in mir (Ubuntu):
importance: Undecided → Critical
Changed in mir:
milestone: none → 0.24.0
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

It appears the crash is in libhybris. Which is not only used by the Mir Android platform, but also used by Unity8 directly!

Changed in libhybris (Ubuntu):
importance: Undecided → Critical
tags: added: black-screen
Revision history for this message
Daniel van Vugt (vanvugt) wrote : Re: Mir servers (unity8, unity-syste-compositor, mir_demo*) crash on start-up in libhybris [linker.c:27: android_dlopen: Assertion `0' failed.']

See bug 1578462 which shows removing the android graphics driver is not enough to stop the crash from happening. Because unity8 seems to use hybris directly.

summary: - Having mir-graphics-drivers-android9:amd64 installed prevents unity-
- system-compositor starting: 'unity-system-compositor: linker.c:27:
- android_dlopen: Assertion `0' failed.'
+ Mir servers (unity8, unity-syste-compositor, mir_demo*) crash on start-
+ up in libhybris [linker.c:27: android_dlopen: Assertion `0' failed.']
summary: - Mir servers (unity8, unity-syste-compositor, mir_demo*) crash on start-
- up in libhybris [linker.c:27: android_dlopen: Assertion `0' failed.']
+ Black screen: Mir servers (unity8, unity-syste-compositor, mir_demo*)
+ all crash on start-up in libhybris [linker.c:27: android_dlopen:
+ Assertion `0' failed.']
Changed in unity8 (Ubuntu):
importance: Undecided → Critical
Changed in unity-system-compositor (Ubuntu):
importance: Undecided → Critical
summary: - Black screen: Mir servers (unity8, unity-syste-compositor, mir_demo*)
+ Black screen: Mir servers (unity8, unity-system-compositor, mir_demo*)
all crash on start-up in libhybris [linker.c:27: android_dlopen:
Assertion `0' failed.']
description: updated
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

This sounds relevant:

libhybris (0.1.0+git20151016+6d424c9-0ubuntu11) xenial; urgency=medium

  * hybris: common: add stub linker implementation <----- ????
  * debian: split out common parts of the default configuration
  * debian: add build support for arm64
  * hybris: add README file stating which architectures are supported
  * hybris: autotools want it to be README

 -- Simon Fels <email address hidden> Tue, 03 May 2016 17:29:41 +0200

Changed in libhybris (Ubuntu):
assignee: nobody → Simon Fels (morphis)
description: updated
Revision history for this message
Michał Sawicz (saviq) wrote :
Changed in libhybris (Ubuntu):
status: New → In Progress
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in mir (Ubuntu):
status: New → Confirmed
Changed in unity-system-compositor (Ubuntu):
status: New → Confirmed
Changed in unity8 (Ubuntu):
status: New → Confirmed
kevin gunn (kgunn72)
Changed in mir:
status: New → Invalid
Changed in mir (Ubuntu):
status: Confirmed → Invalid
Changed in unity-system-compositor (Ubuntu):
status: Confirmed → Invalid
Changed in unity8 (Ubuntu):
status: Confirmed → Invalid
Changed in canonical-devices-system-image:
importance: Undecided → Critical
assignee: nobody → John McAleely (john.mcaleely)
milestone: none → 11
status: New → In Progress
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

I was keeping those tasks open to work around a Launchpad bug/feature: People can't find the bug if they're searching in a task where it's set to Invalid. And generally they will be searching in one of those.

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

untargetted to mir milestones, as the problem is being fixed in hybris

Changed in mir:
milestone: 0.24.0 → none
Changed in canonical-devices-system-image:
milestone: 11 → 12
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Realistically this bug is only critical for desktop and not for the phablet Canonical System Image. So we can move the milestone.

Revision history for this message
John McAleely (john.mcaleely) wrote :

Oh, how is hybris involved on a desktop image?

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Two ways:

1. Mir's android/hybris graphics driver is built for all architectures including amd64/i386. Because we can, and it gives us better test coverage. In theory this is also useful for supporting Intel-based droids that lack a PC BIOS.

2. Unity8 links directly to hybris for its own reasons. Not sure why that is...

Revision history for this message
dinamic (dinamic6661) wrote :

i'm no longer affected by this bug, last update fixed it for me

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Confirmed, the fix has landed (ppa:ci-train-ppa-service/stable-phone-overlay)

Changed in libhybris (Ubuntu):
status: In Progress → Fix Committed
Changed in canonical-devices-system-image:
status: In Progress → Fix Committed
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

I think the target milestone is wrong. The fix is probably in OTA11 (?) It's certainly in Yakkety now: https://launchpad.net/ubuntu/+source/libhybris

Changed in canonical-devices-system-image:
milestone: 12 → 11
Changed in canonical-devices-system-image:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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