Merge lp:~gerboland/qtmir/segv-on-mir-start-timeout into lp:qtmir

Proposed by Gerry Boland
Status: Merged
Approved by: Gerry Boland
Approved revision: 503
Merged at revision: 533
Proposed branch: lp:~gerboland/qtmir/segv-on-mir-start-timeout
Merge into: lp:qtmir
Diff against target: 57 lines (+5/-10)
3 files modified
src/platforms/mirserver/mirserverintegration.cpp (+1/-3)
src/platforms/mirserver/qmirserver.cpp (+3/-6)
src/platforms/mirserver/qmirserver.h (+1/-1)
To merge this branch: bzr merge lp:~gerboland/qtmir/segv-on-mir-start-timeout
Reviewer Review Type Date Requested Status
Unity8 CI Bot (community) continuous-integration Approve
Daniel van Vugt Approve
Review via email: mp+296707@code.launchpad.net

Commit message

Dump core if Mir fails to start in time - dump will help us see where Mir blocked

To post a comment you must log in.
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Nice.

review: Approve
Revision history for this message
Unity8 CI Bot (unity8-ci-bot) wrote :

PASSED: Continuous integration, rev:503
https://unity8-jenkins.ubuntu.com/job/lp-qtmir-ci/269/
Executed test runs:
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build/1907
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-0-fetch/1933
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/1869
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/1869
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/1869
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=amd64,release=vivid+overlay/1860
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=amd64,release=vivid+overlay/1860/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=amd64,release=xenial+overlay/1860
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=amd64,release=xenial+overlay/1860/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=amd64,release=yakkety/1860
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=amd64,release=yakkety/1860/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=armhf,release=vivid+overlay/1860
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=armhf,release=vivid+overlay/1860/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=armhf,release=xenial+overlay/1860
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=armhf,release=xenial+overlay/1860/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=armhf,release=yakkety/1860
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=armhf,release=yakkety/1860/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=i386,release=vivid+overlay/1860
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=i386,release=vivid+overlay/1860/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=i386,release=xenial+overlay/1860
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=i386,release=xenial+overlay/1860/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=i386,release=yakkety/1860
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=i386,release=yakkety/1860/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://unity8-jenkins.ubuntu.com/job/lp-qtmir-ci/269/rebuild

review: Approve (continuous-integration)
Revision history for this message
Unity8 CI Bot (unity8-ci-bot) wrote :

PASSED: Continuous integration, rev:503
https://unity8-jenkins.ubuntu.com/job/lp-qtmir-ci/282/
Executed test runs:
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build/2036
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-0-fetch/2064
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/1976
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/1976
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/1976
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=amd64,release=vivid+overlay/1968
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=amd64,release=vivid+overlay/1968/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=amd64,release=xenial+overlay/1968
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=amd64,release=xenial+overlay/1968/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=amd64,release=yakkety/1968
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=amd64,release=yakkety/1968/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=armhf,release=vivid+overlay/1968
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=armhf,release=vivid+overlay/1968/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=armhf,release=xenial+overlay/1968
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=armhf,release=xenial+overlay/1968/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=armhf,release=yakkety/1968
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=armhf,release=yakkety/1968/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=i386,release=vivid+overlay/1968
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=i386,release=vivid+overlay/1968/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=i386,release=xenial+overlay/1968
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=i386,release=xenial+overlay/1968/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=i386,release=yakkety/1968
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=i386,release=yakkety/1968/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://unity8-jenkins.ubuntu.com/job/lp-qtmir-ci/282/rebuild

review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'src/platforms/mirserver/mirserverintegration.cpp'
--- src/platforms/mirserver/mirserverintegration.cpp 2016-05-05 14:34:21 +0000
+++ src/platforms/mirserver/mirserverintegration.cpp 2016-06-07 17:59:16 +0000
@@ -140,9 +140,7 @@
140void MirServerIntegration::initialize()140void MirServerIntegration::initialize()
141{141{
142 // Creates instance of and start the Mir server in a separate thread142 // Creates instance of and start the Mir server in a separate thread
143 if (!m_mirServer->start()) {143 m_mirServer->start();
144 exit(2);
145 }
146144
147 auto screens = m_mirServer->screensModel().lock();145 auto screens = m_mirServer->screensModel().lock();
148 if (!screens) {146 if (!screens) {
149147
=== modified file 'src/platforms/mirserver/qmirserver.cpp'
--- src/platforms/mirserver/qmirserver.cpp 2016-04-29 15:41:00 +0000
+++ src/platforms/mirserver/qmirserver.cpp 2016-06-07 17:59:16 +0000
@@ -45,23 +45,20 @@
45 stop();45 stop();
46}46}
4747
48bool QMirServer::start()48void QMirServer::start()
49{49{
50 Q_D(QMirServer);50 Q_D(QMirServer);
5151
52 d->serverThread->start(QThread::TimeCriticalPriority);52 d->serverThread->start(QThread::TimeCriticalPriority);
5353
54 if (!d->serverThread->waitForMirStartup())54 if (!d->serverThread->waitForMirStartup()) {
55 {55 qFatal("ERROR: QMirServer - Mir failed to start"); // will core dump
56 qCritical() << "ERROR: QMirServer - Mir failed to start";
57 return false;
58 }56 }
59 d->screensModel->update();57 d->screensModel->update();
60 d->screensController = QSharedPointer<ScreensController>(58 d->screensController = QSharedPointer<ScreensController>(
61 new ScreensController(d->screensModel, d->server->the_display(),59 new ScreensController(d->screensModel, d->server->the_display(),
62 d->server->the_display_configuration_controller()));60 d->server->the_display_configuration_controller()));
63 Q_EMIT started();61 Q_EMIT started();
64 return true;
65}62}
6663
67void QMirServer::stop()64void QMirServer::stop()
6865
=== modified file 'src/platforms/mirserver/qmirserver.h'
--- src/platforms/mirserver/qmirserver.h 2016-04-29 15:41:00 +0000
+++ src/platforms/mirserver/qmirserver.h 2016-06-07 17:59:16 +0000
@@ -34,7 +34,7 @@
34 QMirServer(int &argc, char **argv, QObject* parent=0);34 QMirServer(int &argc, char **argv, QObject* parent=0);
35 virtual ~QMirServer();35 virtual ~QMirServer();
3636
37 bool start();37 void start();
38 Q_SLOT void stop();38 Q_SLOT void stop();
39 bool isRunning() const;39 bool isRunning() const;
4040

Subscribers

People subscribed via source and target branches