(i945 only) Ubuntu Desktop Next fails to start; just black screen and mouse pointer (unity8.log: std::exception::what: Failed to create shared EGL context)
| Affects | Status | Importance | Assigned to | Milestone | |
|---|---|---|---|---|---|
| | Mir |
Invalid
|
High
|
Unassigned | |
| | mesa (Ubuntu) |
High
|
Unassigned | ||
| | mir (Ubuntu) |
High
|
Unassigned | ||
| | qtmir (Ubuntu) |
High
|
Unassigned | ||
Bug Description
Ubuntu Desktop Next fails to start. I just get a black screen and mouse pointer. So unity-system-
unity8.log:
~~~
()
[1420794321.348507] (II) SharedLibrary: Loading libmirplatform5
qtmir.mir: MirServer created
[1420794321.423199] (II) Server: Starting
libEGL warning: unsupported platform (null)
ERROR: /build/
Dynamic exception type: N5boost16except
std::exception:
ERROR: QMirServer - Mir failed to start
terminate called after throwing an instance of 'boost:
what(): Cannot use configuration before apply_settings() call
~~~
I've also verified mir_proving_server with mir_demo_client_* runs fine in another VT.
| Changed in mir: | |
| status: | New → Triaged |
| importance: | Undecided → Critical |
| assignee: | nobody → Daniel van Vugt (vanvugt) |
| milestone: | none → 0.11.0 |
| description: | updated |
| Daniel van Vugt (vanvugt) wrote : | #1 |
| Daniel van Vugt (vanvugt) wrote : | #2 |
Tested with mir-demos on the affected machine. Nesting works just fine with the mir-demos.
This bug then is just Unity8/QtMir choosing EGL config modifications that i945 systems can't support. Looking at the QtMir code, I would hazard a guess that the request for 8 bit stencilling is unreasonable:
class MirGLConfig : public mir::graphics:
{
public:
int depth_buffer_bits() const override { return 24; }
int stencil_
};
| Changed in mir: | |
| status: | Triaged → Invalid |
| milestone: | 0.11.0 → none |
| Changed in qtmir: | |
| status: | New → Triaged |
| importance: | Undecided → Critical |
| Daniel van Vugt (vanvugt) wrote : | #3 |
Also, you shouldn't need a depth buffer for a desktop either. Throwing away that whole MirGLConfig, or at least loosening the restrictions should solve the problem.
| Changed in qtmir (Ubuntu): | |
| importance: | Undecided → Critical |
| status: | New → Triaged |
| description: | updated |
| Daniel van Vugt (vanvugt) wrote : | #4 |
The problem could also be the incorrect selection of a MirPixelFormat.
| Daniel van Vugt (vanvugt) wrote : | #5 |
Reproduced on a third machine, where I could get a copy of the log file off.
| description: | updated |
| Changed in mir: | |
| status: | Invalid → Incomplete |
| Daniel van Vugt (vanvugt) wrote : | #6 |
I'm not quite sure what QtMir is doing to trigger this. I've tried hacks to Mir directly to try and emulate what it might be doing, but my hacks result in nested servers starting and running perfectly still.
Something about QtMir I'm failing to emulate...
| Changed in mir: | |
| status: | Incomplete → Confirmed |
| Changed in qtmir: | |
| status: | Triaged → Confirmed |
| Changed in qtmir (Ubuntu): | |
| status: | Triaged → Confirmed |
| Changed in unity8 (Ubuntu): | |
| status: | Triaged → Confirmed |
| Changed in mir: | |
| milestone: | none → 0.11.0 |
| assignee: | Daniel van Vugt (vanvugt) → nobody |
| tags: | added: nested |
i can also reproduce this issue with the daily images on my eeepc (with i945 graphics)
| Changed in mir: | |
| milestone: | 0.11.0 → 0.12.0 |
| Alexandros Frantzis (afrantzis) wrote : | #8 |
Possible duplicate: bug 1418456 . It has some interesting backtraces and valgrind logs.
| Changed in mir: | |
| milestone: | 0.12.0 → 0.13.0 |
| summary: |
- Ubuntu Desktop Next fails to start; just black screen and mouse pointer - (unity8.log: std::exception::what: Failed to create shared EGL context) + (i945 only) Ubuntu Desktop Next fails to start; just black screen and + mouse pointer (unity8.log: std::exception::what: Failed to create shared + EGL context) |
| no longer affects: | unity8 (Ubuntu) |
| Daniel van Vugt (vanvugt) wrote : | #9 |
Dropped from Critical to High. Because only affecting a small subset of older GPUs is not a release blocker for us.
| Changed in mir: | |
| importance: | Critical → High |
| Changed in qtmir: | |
| importance: | Critical → High |
| Changed in qtmir (Ubuntu): | |
| importance: | Critical → High |
| Changed in mir (Ubuntu): | |
| status: | New → Confirmed |
| importance: | Undecided → High |
| Andreas Pokorny (andreas-pokorny) wrote : | #10 |
The last time I tested those systems the main blocker I saw was our mesa package reporting a too low OpenGL version (the ES support would be fine enough for QtQuick btw). After some digging it seemed that the GL version is limited to 1.X, to avoid usage of certain full screen effects in unity7.
| Daniel van Vugt (vanvugt) wrote : | #11 |
Mir doesn't bother to interpret the OpenGL version string. It goes looking for the features it needs, properly. And the Mir demos almost all work properly on i945 (except for bug 1275684)
Although if QtMir was trying to interpret the version string, I'm not yet sure how that could cause this bug.
| Daniel van Vugt (vanvugt) wrote : | #12 |
Verified fixed on two i945 systems. Probably the Mesa 10.5 upgrade in vivid fixed this.
Unity8 on these older systems is a bit slow and I can't get through the welcome wizard fully. But it's not crashing any more so bug fixed!
| Changed in mesa (Ubuntu): | |
| status: | New → Fix Released |
| importance: | Undecided → High |
| Changed in mir: | |
| status: | Confirmed → Invalid |
| Changed in qtmir: | |
| status: | Confirmed → Invalid |
| Changed in mir (Ubuntu): | |
| status: | Confirmed → Invalid |
| Changed in qtmir (Ubuntu): | |
| status: | Confirmed → Invalid |
| Changed in mir: | |
| milestone: | 0.13.0 → none |
| no longer affects: | qtmir |

Hmm, actually this has only been reported on i945 systems so far (me and another person in: /bugs.launchpad .net/mir/ +bug/1275398/ comments/ 20
https:/
My Haswell desktop works fine with the same image. Maybe we're missing something in our relatively recent mesa patches to support i945?...