-
Notifications
You must be signed in to change notification settings - Fork 322
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BUG][Needs Check] IPC worker thread can run on secondary cores #8165
Milestone
Comments
lyakh
added
bug
Something isn't working as expected
P2
Critical bugs or normal features
labels
Sep 6, 2023
@marcinszkudlinski are you also aligned with this proposal ? |
Nobody assigned, less than a week to branch, moving to v2.9. |
Stable-v2.9 branched, this didn't make the cut, bumping to 2.10. |
@lyakh Can you check this and if still valid, ensure this is covered for for v2.13 ? Bumping now as v2.12 has been already branched. |
lyakh
added a commit
to lyakh/sof
that referenced
this issue
Jan 6, 2025
Low level IPC processing should be confined to the primary core. Move delayed IPC sending to a dedicated work queue with core 0 affinity. Fixes: thesofproject#8165 Signed-off-by: Guennadi Liakhovetski <[email protected]>
lyakh
added a commit
to lyakh/sof
that referenced
this issue
Jan 9, 2025
Low level IPC processing should be confined to the primary core. Move delayed IPC sending to a dedicated work queue with core 0 affinity. Fixes: thesofproject#8165 Signed-off-by: Guennadi Liakhovetski <[email protected]>
lyakh
added a commit
to lyakh/sof
that referenced
this issue
Jan 10, 2025
Low level IPC processing should be confined to the primary core. Move delayed IPC sending to a dedicated work queue with core 0 affinity. Fixes: thesofproject#8165 Signed-off-by: Guennadi Liakhovetski <[email protected]>
lyakh
added a commit
to lyakh/sof
that referenced
this issue
Jan 10, 2025
Low level IPC processing should be confined to the primary core. Move delayed IPC sending to a dedicated work queue with core 0 affinity. Fixes: thesofproject#8165 Signed-off-by: Guennadi Liakhovetski <[email protected]>
lyakh
added a commit
to lyakh/sof
that referenced
this issue
Jan 13, 2025
Low level IPC processing should be confined to the primary core. Move delayed IPC sending to a dedicated work queue with core 0 affinity. Fixes: thesofproject#8165 Signed-off-by: Guennadi Liakhovetski <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Describe the bug
SOF isn't an SMP system, its use of cores is hard-wired. Most management tasks are only supposed to run on the primary core, only pre-assigned audio processing tasks should run on secondary cores. One of such management tasks is the EDF scheduler work handler. To fix it to the primary core a special work queue is created, which is set to only run on the primary core, and the delayed work, implementing the scheduler, is submitted to that queue.
Whereas the IPC delayed work is run on the default work queue, which on Zephyr can run on any core.
Expected behavior
The IPC delayed work should only run on the primary core.
Impact
Running on a secondary core without proper code synchronisation can lead to data corruption.
The text was updated successfully, but these errors were encountered: