tmf: Introduce dependency level for event requests
Requests with the same dependency level that are compatible otherwise
can be serviced by the event provider together. In TMF, the
TmfEventProvider will coalesce these requests together to a coalesced
event request so the trace is read once and the events are dispatched
to each sub-request.
If these request are not on the same dependency level, then each
request will be serviced separately by the event provider.
This can be useful, when a request has to wait for a condition to
happen in another event request. It can block its request till that
condition is met. If both request were coalesced the coalesced request
will deadlock by one request.
Side effects of this patch:
- Traces (TmfTrace) will be read concurrently when using different
dependency levels. The event request scheduler of the TmfEventProvider
will take care of scheduling each request.
- In an experiment, requests may not be serviced by the same
TmfEventProvider, some may be serviced by the TmfExperiment, some
by the children traces (TmfTrace).
Change-Id: I2b2e143bc8dc9cd8d1707b033715cbb05a529401
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/70864
Reviewed-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
This page took 0.027117 seconds and 5 git commands to generate.