Clients freeze on startup if 10 or more are already running
Bug #1267323 reported by
Daniel van Vugt
This bug affects 2 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Mir |
Fix Released
|
High
|
Alan Griffiths | ||
mir (Ubuntu) |
Fix Released
|
High
|
Unassigned |
Bug Description
Clients freeze on startup if 10 or more are already running.
Test case:
1. mir_demo_
2. mir_demo_
3. Repeat #2 ten more times.
Expected: Each new client appears and is animated
Observed: The 11th and subsequent clients freeze on startup. At least until you move one with Alt+drag, then it starts moving.
Related branches
lp://staging/~alan-griffiths/mir/refactoring-so-SwitchingBundle-can-control-completion-of-client_acquire
- PS Jenkins bot (community): Approve (continuous-integration)
- Alexandros Frantzis (community): Approve
- Kevin DuBois (community): Approve
- Daniel van Vugt: Needs Fixing
-
Diff: 1466 lines (+436/-205)33 files modifiedexamples/render_surfaces.cpp (+3/-2)
include/server/mir/compositor/buffer_stream.h (+1/-1)
include/server/mir/frontend/surface.h (+8/-1)
include/test/mir_test_doubles/mock_buffer_bundle.h (+1/-1)
include/test/mir_test_doubles/mock_buffer_stream.h (+1/-1)
include/test/mir_test_doubles/mock_frontend_surface.h (+1/-1)
include/test/mir_test_doubles/stub_buffer_stream.h (+2/-2)
src/server/compositor/buffer_bundle.h (+1/-1)
src/server/compositor/buffer_stream_surfaces.cpp (+5/-4)
src/server/compositor/buffer_stream_surfaces.h (+1/-1)
src/server/compositor/switching_bundle.cpp (+2/-2)
src/server/compositor/switching_bundle.h (+1/-1)
src/server/frontend/protobuf_message_processor.cpp (+46/-0)
src/server/frontend/protobuf_message_processor.h (+1/-0)
src/server/frontend/session_mediator.cpp (+82/-77)
src/server/frontend/session_mediator.h (+2/-1)
src/server/frontend/surface.cpp (+25/-1)
src/server/scene/basic_surface.cpp (+3/-3)
src/server/scene/basic_surface.h (+1/-1)
src/server/scene/surface_impl.cpp (+2/-2)
src/server/scene/surface_impl.h (+1/-1)
tests/integration-tests/compositor/test_buffer_stream.cpp (+47/-21)
tests/integration-tests/compositor/test_swapping_swappers.cpp (+27/-2)
tests/integration-tests/graphics/android/test_buffer_integration.cpp (+25/-1)
tests/integration-tests/test_session.cpp (+1/-1)
tests/integration-tests/test_swapinterval.cpp (+15/-7)
tests/unit-tests/compositor/test_buffer_stream.cpp (+39/-9)
tests/unit-tests/compositor/test_switching_bundle.cpp (+58/-30)
tests/unit-tests/compositor/test_temporary_buffers.cpp (+2/-2)
tests/unit-tests/frontend/test_session_mediator.cpp (+10/-6)
tests/unit-tests/scene/test_surface.cpp (+19/-20)
tests/unit-tests/scene/test_surface_impl.cpp (+2/-1)
tests/unit-tests/scene/test_surface_stack.cpp (+1/-1)
lp://staging/~alan-griffiths/mir/SwitchingBundle-controls-completion-of-client_acquire-without-blocking
- PS Jenkins bot (community): Approve (continuous-integration)
- Alexandros Frantzis (community): Approve
- Andreas Pokorny (community): Approve
- Daniel van Vugt: Abstain
- Kevin DuBois (community): Approve
- Alan Griffiths: Pending requested
-
Diff: 102 lines (+27/-6)3 files modifiedsrc/server/compositor/switching_bundle.cpp (+23/-5)
src/server/compositor/switching_bundle.h (+3/-1)
src/server/frontend/session_mediator.cpp (+1/-0)
lp://staging/~alan-griffiths/mir/fix-1281145
- PS Jenkins bot (community): Approve (continuous-integration)
- Daniel van Vugt: Approve
-
Diff: 19 lines (+6/-3)1 file modifiedsrc/server/compositor/switching_bundle.cpp (+6/-3)
Changed in mir: | |
status: | Fix Committed → In Progress |
Changed in mir: | |
milestone: | 0.1.5 → 0.1.6 |
Changed in mir: | |
status: | In Progress → Fix Committed |
Changed in mir: | |
status: | Fix Committed → Fix Released |
To post a comment you must log in.
Probably related to the frontend thread pool --> bug 1233001