thesofproject / sof

Sound Open Firmware
Other
562 stars 318 forks source link

[BUG] PCM probe does not work with multicore topologies #6100

Open kv2019i opened 2 years ago

kv2019i commented 2 years ago

Describe the bug The pcm probe client uses notifier_register() to register to buffers (to probe). The notifier interface registers the notifier just for the calling CPU and if the buffer is attached to a pipeline running on a different core, no notifications are received and thus no data is probed.

To Reproduce Use a multicore pipeline like cavs-nocodec. Start playback with pipeline assigned to non-zero core, attach probe points to buffers of this pipeline.

Reproduction Rate 100%

Expected behavior Probe interface works for all buffers independently of the core they are allocated to.

Impact Unable to use PCM probe to debug issues with multicore topologies.

Environment

1) Branch name and commit hash of the 2 repositories: sof (firmware/topology) and linux (kernel driver).

Screenshots or console output

lgirdwood commented 2 years ago

@kv2019i xtos or zephy ?

kv2019i commented 2 years ago

@lgirdwood wrote:

@kv2019i xtos or zephy ?

Both.

lyakh commented 2 years ago

probes don't acquire buffers correctly, let me try to cook up a patch

kv2019i commented 2 years ago

Discussion about how to fix this: https://github.com/thesofproject/sof/pull/6137#discussion_r945478298