Hi,

On Thu, Sep 15, 2016 at 3:43 AM, <r...@ubuntu.com> wrote:

> [...]
>
> If we *are* going to treat Reports as something that shells can
> generically hook into to drive control flow we're going to need to be more
> careful about the environment we call them in. For example, currently if a
> shell hooks into new_configuration() and requests the base_configuration()
> we'll deadlock. I've not worried about ensuring my code doesn't hold any
> locks when calling into a Report, nor have I checked that during reviews,
> because I've expected the Report implementations to be roughly pure
> functions.
>

Yes - I also see that as one of the core problems here. So we could avoid
deadlocks by executing the report implementation asynchronously in a
dedicated thread. But I think we want lttng reports to be executed
synchronously... we could have two different registration mechanisms to
allow both ways of execution.

The other problem is that we never intended reports to be useful as
observers - so they usually only get the information needed by the default
implementations to generate logs/events.

So I think instead of what was outlined here in this thread to extend
Reports, we should rename DisplayConfigurationReport so that it does not
tie with the other Reports.

regards
Andreas Pokorny
-- 
Mir-devel mailing list
Mir-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/mir-devel

Reply via email to