Mir

Code review comment for lp:~raof/mir/no-ipc-on-compositor-threads

Revision history for this message
Chris Halse Rogers (raof) wrote :

On 2 August 2017 6:03:59 pm AEST, Alan Griffiths <email address hidden> wrote:
>> This is why ptest doesn't fail; each test gets its own process...
>
>I'm not convinced by that final reasoning: with ptest each test fixture
>gets its own process, but that still runs multiple tests (each of which
>may fork).

More correctly: our tests that fork do so *first*, and do all of their multi-threading in a child.

Then along comes this MP, and causes a thread to hang around - waiting on a condition variable - from a previous test. Now our top-level fork is mt.

A hack - delete and recreate the executor across fork boundaries using pthread_atfork() - resolves this. It should also work to quiesce the executor pre-fork and then resume it in the other end.
--
Sent from my Android device with K-9 Mail. Please excuse my brevity.

« Back to merge proposal