Mir

[i865] unity-system-compositor fails to start: Failed to choose ARGB EGL config

Bug #1212753 reported by Colin Law
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Mir
Fix Released
Medium
Daniel van Vugt
mir (Ubuntu)
Fix Released
Medium
Unassigned

Bug Description

After installing unity-system-compositor it appears that it does not start, and in /var/log/lightdm/unity-system-compositor.log is

ERROR: /build/buildd/mir-0.0.9+13.10.20130813/src/server/graphics/gbm/gbm_display_helpers.cpp(457): Throw in function void mir::graphics::gbm::helpers::EGLHelper::setup_internal(const mir::graphics::gbm::helpers::GBMHelper&, bool)
Dynamic exception type: boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<std::runtime_error> >
std::exception::what: Failed to choose ARGB EGL config

ProblemType: Bug
DistroRelease: Ubuntu 13.10
Package: unity-system-compositor 0.0.1+13.10.20130813.1-0ubuntu1
ProcVersionSignature: Ubuntu 3.11.0-2.5-generic 3.11.0-rc5
Uname: Linux 3.11.0-2-generic i686
ApportVersion: 2.12-0ubuntu3
Architecture: i386
Date: Thu Aug 15 17:36:12 2013
InstallationDate: Installed on 2013-08-15 (0 days ago)
InstallationMedia: Ubuntu 13.10 "Saucy Salamander" - Alpha i386 (20130815)
MarkForUpload: True
SourcePackage: unity-system-compositor
UpgradeStatus: No upgrade log present (probably fresh install)

Related branches

Revision history for this message
Colin Law (colin-law) wrote :
Revision history for this message
Colin Law (colin-law) wrote :
Revision history for this message
Colin Law (colin-law) wrote :

In case it is relevant, even when u-s-c is not enabled I still do not get Unity loaded, see bug #1212821 (Unity fails to load on old hardware on Saucy).

affects: unity-system-compositor (Ubuntu) → unity-system-compositor
Changed in unity-system-compositor:
importance: Undecided → Critical
status: New → Triaged
Changed in mir:
status: New → Triaged
importance: Undecided → Critical
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

I think this is the issue:

[ 36.136] (==) intel(0): Depth 15, (--) framebuffer bpp 16
[ 36.136] (==) intel(0): RGB weight 555

And we already know that Mir does not support 16-bit colour modes.

summary: - Exception Failed to choose ARGB EGL config starting u-s-c
+ unity-system-compositor fails to start: Failed to choose ARGB EGL config
Revision history for this message
Daniel van Vugt (vanvugt) wrote : Re: unity-system-compositor fails to start: Failed to choose ARGB EGL config

Colin,

I feel we need to do better testing with intel hardware like yours. But the best details I can gather about your system are:

[ 36.136] (==) intel(0): Depth 15, (--) framebuffer bpp 16
[ 36.136] (==) intel(0): RGB weight 555
[ 36.136] (==) intel(0): Default visual is TrueColor
[ 36.136] (--) intel(0): Integrated Graphics Chipset: Intel(R) 865G
[ 36.139] (--) intel(0): CPU: x86, sse2
[ 36.139] (**) intel(0): Framebuffer tiled
...
[ 36.140] (II) intel(0): SNA initialized with Almador (gen2) backend
...
[ 36.140] (II) intel(0): [DRI2] Setup complete
[ 36.140] (II) intel(0): [DRI2] DRI driver: i915
[ 36.140] (II) intel(0): direct rendering: DRI2 Enabled

Do you have any more information about what kind of GPU/CPU you have? Can you "lspci" and "cat /proc/cpuinfo"?

Also, please make sure you _don't_ have a /etc/X11/xorg.conf so that X can properly detect your setup.

Revision history for this message
Colin Law (colin-law) wrote :

I do not have access to the machine for a couple of weeks. I will provide the information when I can.

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

Dropping the importance. It appears this bug is only likely to happen with fairly old hardware (which lacks 32-bit colour modes).

Changed in mir:
importance: Critical → High
Changed in unity-system-compositor:
importance: Critical → High
Revision history for this message
Colin Law (colin-law) wrote :

I can confirm that there is no xorg.conf

Attaching /proc/cpuinfo and results of lspci

Revision history for this message
Colin Law (colin-law) wrote :
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Thanks. I'm working on acquiring a Pentium 4 to try out.

Changed in mir:
assignee: nobody → Daniel van Vugt (vanvugt)
summary: - unity-system-compositor fails to start: Failed to choose ARGB EGL config
+ [i865] unity-system-compositor fails to start: Failed to choose ARGB EGL
+ config
Changed in mir (Ubuntu):
status: New → Triaged
importance: Undecided → High
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

OK, I've now spent far too many hours and days setting up legacy hardware to make progress on this bug. And no good news yet...

Pentium 4:
No results as I could only get one which lacked integrated graphics.

Pentium 3 (i810):
Mir fails much earlier as the i810 is only DRI1 and doesn't support DRI2 which appears to be a prerequisite for GBM support. And even if that wasn't a problem, then I'd still be without hardware acceleration as the i810 driver was dropped in Mesa 8.0:
  http://www.mesa3d.org/relnotes/8.0.html
So the best hope for the Pentium 3 is software rendering support later. But even then it is likely too slow for LLVMpipe to be useful. Certainly the machine can't cope with Unity7 or Gnome3.

But hope is not lost for your i865. In theory that should still be supportable by Mir, if only we fix up our initialization to deal with systems that are limited to 16-bit colour.

kevin gunn (kgunn72)
Changed in mir:
importance: High → Low
Changed in unity-system-compositor:
importance: High → Low
Changed in mir (Ubuntu):
importance: High → Low
Revision history for this message
Colin Law (colin-law) wrote :

So is the conclusion basically that older graphics is not to be supported by Mir?

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

Mir should eventually support most systems from the past decade or so, within reason. I think this bug still looks fixable but we haven't made any progress as no Mir developer has access to such a system to test. And I have spent several weekends already gathering up old hardware trying to reproduce just this bug.

Alternatively, if i865 hardware acceleration can't be resurrected then it will eventually fall back to software rendering (which isn't implemented yet). But I think we'd aim to fix hardware rendering for you instead.

Changed in mir:
assignee: Daniel van Vugt (vanvugt) → nobody
importance: Low → Medium
Changed in unity-system-compositor:
importance: Low → Medium
Changed in mir (Ubuntu):
importance: Low → Medium
Revision history for this message
Colin Law (colin-law) wrote :

OK, thanks Daniel. This is not actually causing me personally a problem as this box is just one of the ones that I use for testing.

Revision history for this message
installshield_freak (installshield-freak) wrote :

@Daniel, I have an older Dell with an i865, I'd send it but I cannot afford shipping. If you want in please let me know. <email address hidden>

Thank you

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

I appreciate the thought. :)

What model Dell has i865?

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

Also note: In the log of comment #2 it shows that the DRI driver that supports i865 hardware is "i915". And we're already aware that Mir doesn't yet fully support the i915 Mesa driver. But it should do in the near future --> bug 1275398

Once bug 1275398 is fixed we should only need to adjust Mir's EGL config logic to fix this bug. But that's very difficult without any hardware to test on.

Revision history for this message
installshield_freak (installshield-freak) wrote :

Dell Dimension 4600 with an Intel Pentium 4 2.4GHz

Changed in mir:
status: Triaged → In Progress
assignee: nobody → Daniel van Vugt (vanvugt)
milestone: none → 0.10.0
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

Fix committed into lp:mir at revision None, scheduled for release in mir, milestone 0.10.0

Changed in mir:
status: In Progress → Fix Committed
no longer affects: unity-system-compositor
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (5.2 KiB)

This bug was fixed in the package mir - 0.10.0+15.04.20150107.2-0ubuntu1

---------------
mir (0.10.0+15.04.20150107.2-0ubuntu1) vivid; urgency=medium

  [ Daniel van Vugt ]
  * New upstream release 0.10.0 (https://launchpad.net/mir/+milestone/0.10.0)
    - Enhancements:
      . Added support for Android HWC 1.3 devices.
      . Plumbing/preparation to support external displays on Android devices.
      . Reduced build dependencies.
      . Client API: Added version macros.
      . Began work on automatic driver probing, to intelligently choose the
        best driver for you.
      . Demo shell (mir_proving_server): Added desktop zoom feature using
        Super + mouse wheel.
      . Demo renamed: mir_demo_server_shell -> mir_proving_server
      . Other demo servers merged into -> mir_demo_server
      . Wider support for display buffer pixel formats in the mesa driver, for
        wider hardware support.
      . Performance: On mesa/desktop at least; only hold compositor buffers
        for the duration of the render, instead of the duration of the frame.
        Following this change the compositor report can now finally report
        render time instead of frame time.
      . Mir now starts reliably when a TV is connected by HDMI, and up to
        4K resolution (2160p) is known to work.
      . Plenty more enhancements logged in the bugs list below.
    - ABI summary: Servers need rebuilding, but clients do not;
      . Mirclient ABI unchanged at 8
      . Mircommon ABI unchanged at 3
      . Mirplatform ABI bumped to 5
      . Mirserver ABI bumped to 28
    - Bug fixes:
      . [regression] Mir servers (since 0.9) randomly crash in malloc due to
        heap corruption (LP: #1401488)
      . USC - mouse cursor on AMD graphics is drawing incorrectly
        (LP: #1391975)
      . Mir fails to start when a TV is connected by HDMI
        [std::exception::what: Invalid or inconsistent display configuration]
        (LP: #1395405)
      . Input/event driven clients may freeze indefinitely (LP: #1396006)
      . Mir server crashes with "std::exception::what: Failed to get front
        buffer object" when trying to fullscreen a surface (LP: #1398296)
      . Switching windows with a Trusted Prompt Session active loses the
        trusted prompt session (LP: #1355173)
      . CI test failure in multiple tests (LP: #1401364)
      . dh_install: usr/bin/mir_demo_server exists in debian/tmp but is not
        installed to anywhere (LP: #1401365)
      . [regression] demo-shell: Instead of moving surfaces they now fly
        off-screen (LP: #1403702)
      . [regression] Binaries are no longer runnable on other machines (or in
        other directories) (LP: #1406073)
      . [i865] unity-system-compositor fails to start: Failed to choose ARGB
        EGL config (LP: #1212753)
      . Mir's compositor holds buffers (blocking clients) for the duration of
        the frame, even when not necessary. (LP: #1264934)
      . Screen goes blank (black) briefly during display config changes which
        don't affect the display mode (LP: #1274359)
      . [enhancement] There should be a quit signal sent to sessions instead
        of killing them dir...

Read more...

Changed in mir (Ubuntu):
status: Triaged → Fix Released
Changed in mir:
status: Fix Committed → Fix Released
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

If you're still experiencing this problem, the discussion continues in bug 1420574.

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.