Skip to content

Conversation

@kv2019i
Copy link
Collaborator

@kv2019i kv2019i commented Mar 31, 2022

When processing a trigger action in pipeline_task_cmd(), do
not return SOF_TASK_STATE_RESCHEDULE if the pipeline is already
in requested ACTIVE state.

The unnecessary reschedule can cause scheduling bubbles in
topologies with mixer fed by multiple source pipelines. When
the frontend pipelines are released from pause or started,
the connected pipelines that are already running, need to keep
running. A reschedule will cause a gap in scheduling in
of the downstream pipeline(s) mixer feeds.

This fix is not sufficient on its own, but is part of the fixes
to address: #5469

Signed-off-by: Kai Vehmanen kai.vehmanen@linux.intel.com

When processing a trigger action in pipeline_task_cmd(), do
not return SOF_TASK_STATE_RESCHEDULE if the pipeline is already
in requested ACTIVE state.

The unnecessary reschedule can cause scheduling bubbles in
topologies with mixer fed by multiple source pipelines. When
the frontend pipelines are released from pause or started,
the connected pipelines that are already running, need to keep
running. A reschedule will cause a gap in scheduling in
of the downstream pipeline(s) mixer feeds.

This fix is not sufficient on its own, but is part of the fixes
to address: thesofproject#5469

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
@kv2019i
Copy link
Collaborator Author

kv2019i commented Mar 31, 2022

We might want to wait until @lyakh can review this. This is touching code Guennadi added fairly recently.

@lgirdwood lgirdwood merged commit e4e3dd9 into thesofproject:main Apr 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants