Skip to content

Commit afbc5d2

Browse files
committed
module_adapter: Don't propagate ENOSPC and ENODATA error codes
Do not pass non-critical ENOSPC and ENODATA error codes from a module processing function to the pipeline. The pipeline will stop and enter xrun recovery if a module processing function returns a non-zero value. Signed-off-by: Adrian Warecki <adrian.warecki@intel.com>
1 parent 2f1dc49 commit afbc5d2

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

src/audio/module_adapter/module_adapter.c

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -990,9 +990,12 @@ static int module_adapter_sink_source_copy(struct comp_dev *dev)
990990
ret = module_process_sink_src(mod, mod->sources, mod->num_of_sources,
991991
mod->sinks, mod->num_of_sinks);
992992

993-
if (ret != -ENOSPC && ret != -ENODATA && ret) {
994-
comp_err(dev, "module_adapter_sink_source_copy() process failed with error: %x",
995-
ret);
993+
if (ret) {
994+
if (ret != -ENOSPC && ret != -ENODATA)
995+
comp_err(dev, "module_adapter_sink_source_copy() process failed with error: %d",
996+
ret);
997+
else
998+
ret = 0;
996999
}
9971000

9981001
/* count number of processed data. To be removed in pipeline 2.0 */

0 commit comments

Comments
 (0)