Created by Alan Griffiths and last modified
Get this branch:
bzr branch lp:~alan-griffiths/mir/revert-3477
Only Alan Griffiths can upload to this branch. If you are Alan Griffiths please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Alan Griffiths

Recent revisions

3481. By Alan Griffiths

Revert -C 3477

3480. By Alan Griffiths

geometry: Make a load of stuff constexpr.

Approved by mir-ci-bot, Kevin DuBois, Cemil Azizoglu.

3479. By Kevin DuBois

client: send incoming asynchronous buffer messages directly to the mcl::Buffer object. Prepares the buffers to be allocated from the connection, instead of a chain/stream.

Change the async protocol a bit too so the RPC channel can manage the async buffers better. The RPC allocate/free buffer calls are not synchronized with the async buffer sending, so the server has to be a bit more explicit about what operation its performing, so the client side rpc channel can clean up the buffers better.

So the notification chains go from:
OBS (buffer_stream):
rpc -> buffer_stream
NBS (buffer_stream):
rpc -> buffer_stream
NBS: (presentation_chain):
rpc -> buffer_stream -> buffer


OBS (buffer_stream):
rpc -> buffer_stream
NBS (buffer_stream):
rpc -> buffer -> buffer_stream
NBS: (presentation_chain):
rpc -> buffer .

Approved by mir-ci-bot, Cemil Azizoglu.

3478. By Chris Halse Rogers

Server::run(): Destroy server config after only exception processing has completed.

The server config owns all UniqueModulePtr references to all the loaded platforms.
If the server config is destroyed, then all loaded platforms will be dlclos()ed.

Since we may be handling an exception thrown from one of those DSOs, this is unsafe and can lead to a SIGEGV that appears to be stack corruption as the code it is jumping to has been unloaded.

Fixes: https://bugs.launchpad.net/mir/+bug/1553549. Fixes: https://bugs.launchpad.net/bugs/1553549.

Approved by mir-ci-bot, Daniel van Vugt, Kevin DuBois, Alan Griffiths, Cemil Azizoglu.

3477. By Daniel van Vugt

Generalise performance tests:
  * Rename mir_performance_tests to mir_glmark2_performance_test to
    show it is just a client performance test; and
  * Add a replacement script 'mir_performance_tests' that executes
    the old test but also will launch other performance tests in

Approved by Cemil Azizoglu, mir-ci-bot.

3476. By Kevin DuBois

client: split off the simpler groundwork code from the larger lp:~kdub/mir/notify-buffers-directly branch to reduce diff size.
1) Plumb through connection-wide the BufferFactory and SurfaceMap for the later branch to use in the BufferStream
2) provide a mechanism to cancel buffer requests in the factory
3) refine locking a bit in SurfaceMap.

Approved by Alan Griffiths, mir-ci-bot, Cemil Azizoglu.

3475. By Alberto Aguirre

Add an explicit "Virtual" display type. Fixes LP: #1573782.

Approved by Cemil Azizoglu.

3474. By Alberto Aguirre

Remove orphaned screencast sessions on disconnection

When a client disconnects either normally or due to a crash, remove any screencasts associated with the session. Fixes: https://launchpad.net/bugs/1573572

Approved by Cemil Azizoglu, mir-ci-bot.

3473. By Kevin DuBois

android: whitelist the use of EGL_KHR_fence_sync. Adreno devices have performant, non-problem-causing implementations, at the moment under hybris, other platforms need some work to get these extensions up to snuff.

Approved by mir-ci-bot, Cemil Azizoglu, Alberto Aguirre.

3472. By Chris Halse Rogers

Move ShmBuffer into new platforms/common/server path.

Approved by mir-ci-bot, Alan Griffiths, Cemil Azizoglu, Kevin DuBois, Andreas Pokorny.

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
This branch contains Public information 
Everyone can see this information.