Mir

Merge lp://qastaging/~kdub/mir/fix-1563278 into lp://qastaging/mir

Proposed by Kevin DuBois
Status: Merged
Approved by: Alan Griffiths
Approved revision: no longer in the source branch.
Merged at revision: 3458
Proposed branch: lp://qastaging/~kdub/mir/fix-1563278
Merge into: lp://qastaging/mir
Prerequisite: lp://qastaging/~kdub/mir/require-streams-when-creating-surface
Diff against target: 1298 lines (+188/-200)
22 files modified
examples/render_surfaces.cpp (+1/-1)
include/server/mir/scene/surface_factory.h (+3/-1)
playground/mir_demo_client_prerendered_frames.c (+1/-6)
src/server/scene/application_session.cpp (+14/-2)
src/server/scene/basic_surface.cpp (+19/-5)
src/server/scene/basic_surface.h (+2/-2)
src/server/scene/surface_allocator.cpp (+3/-5)
src/server/scene/surface_allocator.h (+1/-1)
tests/acceptance-tests/throwback/test_presentation_chain.cpp (+1/-2)
tests/include/mir/test/doubles/mock_surface.h (+4/-2)
tests/include/mir/test/doubles/stub_surface_factory.h (+1/-1)
tests/integration-tests/surface_composition.cpp (+5/-4)
tests/integration-tests/test_error_reporting.cpp (+1/-1)
tests/integration-tests/test_session.cpp (+7/-6)
tests/integration-tests/test_surface_stack_with_compositor.cpp (+13/-9)
tests/unit-tests/scene/test_abstract_shell.cpp (+1/-2)
tests/unit-tests/scene/test_application_session.cpp (+15/-14)
tests/unit-tests/scene/test_basic_surface.cpp (+11/-36)
tests/unit-tests/scene/test_session_manager.cpp (+1/-1)
tests/unit-tests/scene/test_surface.cpp (+4/-9)
tests/unit-tests/scene/test_surface_impl.cpp (+5/-4)
tests/unit-tests/scene/test_surface_stack.cpp (+75/-86)
To merge this branch: bzr merge lp://qastaging/~kdub/mir/fix-1563278
Reviewer Review Type Date Requested Status
Mir CI Bot continuous-integration Approve
Alan Griffiths Approve
Cemil Azizoglu (community) Approve
Review via email: mp+291647@code.qastaging.launchpad.net

Commit message

fix LP: #1563278 by allowing Surfaces to be created with non-default streams.

This allows the user of MirPresentationChains to set up the MirSurface so that no MirBufferStream is created at MirSurface startup, or allows the user of mir_surface_spec_set_streams to set a non-default configuration at startup.

Description of the change

fix LP: #1563278 by allowing Surfaces to be created with non-default streams.

This allows the user of MirPresentationChains to set up the MirSurface so that no MirBufferStream is created at MirSurface startup, or allows the user of mir_surface_spec_set_streams to set a non-default configuration at startup.

To post a comment you must log in.
Revision history for this message
Kevin DuBois (kdub) wrote :

portending a suggestion to change std::list to std::vector... This reflects the existing set_streams() function that takes a std::list.

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3450
https://mir-jenkins.ubuntu.com/job/mir-ci/817/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/820
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/857
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/848
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial/848
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=vivid+overlay/830
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=vivid+overlay/830/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial/830
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial/830/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/830
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/830/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/830
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/830/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial/830
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial/830/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/817/rebuild

review: Approve (continuous-integration)
Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

Just nits:

 }
-
TEST_F(SurfaceStack, occludes_not_rendered_surface)

I'd like to keep that whitespace.

~~~~

+ stub_buffer_stream1 = std::make_shared<mtd::StubBufferStream>();
+ stub_buffer_stream2 = std::make_shared<mtd::StubBufferStream>();
+ stub_buffer_stream3 = std::make_shared<mtd::StubBufferStream>();
...
+ std::shared_ptr<mc::BufferStream> stub_buffer_stream1;
+ std::shared_ptr<mc::BufferStream> stub_buffer_stream2;
+ std::shared_ptr<mc::BufferStream> stub_buffer_stream3;

I think test fixtures are a great place for in-class initializers - half the lines used here and only one place to look.

~~~~

 }
-
//test associated with lp:1290306, 1293896, 1294048, 1294051, 1294053

I'd like to keep that whitespace.

review: Needs Fixing
Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

FAILED: Continuous integration, rev:3452
https://mir-jenkins.ubuntu.com/job/mir-ci/828/
Executed test runs:
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-mir/833/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/870
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/861
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial/861
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=vivid+overlay/843/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial/843
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial/843/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/843
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/843/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/843
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/843/artifact/output/*zip*/output.zip
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial/843/console

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/828/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
Kevin DuBois (kdub) wrote :

unrelated, retriggering.

Revision history for this message
Cemil Azizoglu (cemil-azizoglu) wrote :

Looks good

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

FAILED: Continuous integration, rev:3452
https://mir-jenkins.ubuntu.com/job/mir-ci/829/
Executed test runs:
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-mir/834/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/871
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/862
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial/862
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=vivid+overlay/844
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=vivid+overlay/844/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial/844
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial/844/artifact/output/*zip*/output.zip
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/844/console
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/844/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/844
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/844/artifact/output/*zip*/output.zip
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial/844/console

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/829/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
Kevin DuBois (kdub) wrote :

19:23:52 [ RUN ] MirSurfaceVisibilityEvent.exposed_received_when_surface_raised_over_occluding_surface

Revision history for this message
Kevin DuBois (kdub) wrote :
Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

Probably a slow test environment - a generous 10s timeout and a test taking 30s to run!

18:51:00 11: [ RUN ] ApplicationNotRespondingDetection.failure_to_pong_is_noticed
18:51:00 11: [2016-04-13 18:50:59.936136] mirserver: Starting
18:51:00 11: [2016-04-13 18:51:00.526634] mirserver: Selected driver: dummy (version 0.22.0)
18:51:02 11: [2016-04-13 18:51:02.694384] mirserver: Using software cursor
18:51:03 11: [2016-04-13 18:51:03.829134] mirserver: Initial display configuration:
18:51:03 11: [2016-04-13 18:51:03.876013] mirserver: 1.1: VGA 0.0" 0x0mm
18:51:03 11: [2016-04-13 18:51:03.894852] mirserver: Current mode 1600x1600 60.00Hz
18:51:03 11: [2016-04-13 18:51:03.897768] mirserver: Preferred mode 1600x1600 60.00Hz
18:51:03 11: [2016-04-13 18:51:03.900158] mirserver: Logical position +0+0
18:51:05 11: [2016-04-13 18:51:05.590816] mirserver: Selected input driver: mir:stub-input (version: 0.22.0)
18:51:05 11: [2016-04-13 18:51:05.932306] mirserver: Mir version 0.22.0
18:51:26 11: /��BUILDDIR��/mir-0.22.0+xenial862bzr3452/tests/acceptance-tests/test_application_not_responding_detection.cpp:115: Failure
18:51:26 11: Value of: marked_as_unresponsive.wait_for(10s)
18:51:26 11: Actual: false
18:51:26 11: Expected: true
18:51:28 11: [2016-04-13 18:51:28.042141] mirserver: Stopping
18:51:30 11: [ FAILED ] ApplicationNotRespondingDetection.failure_to_pong_is_noticed (30224 ms)

Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

OK

review: Approve
Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

> Probably a slow test environment - a generous 10s timeout and a test taking
> 30s to run!

Logged as lp:1570327

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

FAILED: Continuous integration, rev:3452
https://mir-jenkins.ubuntu.com/job/mir-ci/835/
Executed test runs:
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-mir/843/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/880
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/871
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial/871
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=vivid+overlay/853/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial/853
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial/853/artifact/output/*zip*/output.zip
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/853/console
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/853/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/853
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/853/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial/853
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial/853/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/835/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
Mir CI Bot (mir-ci-bot) :
review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
The diff is not available at this time. You can reload the page or download it.

Subscribers

People subscribed via source and target branches