case snd_soc_dapm_scheduler:
                pipeline = swidget->private;
 
-               if (pipeline->use_chain_dma)
+               if (pipeline->use_chain_dma) {
+                       dev_warn(sdev->dev, "use_chain_dma set for schduler %s",
+                                swidget->widget->name);
                        return 0;
+               }
 
                dev_dbg(sdev->dev, "pipeline: %d memory pages: %d\n", swidget->pipeline_id,
                        pipeline->mem_usage);
                struct sof_ipc4_msg msg = {{ 0 }};
                u32 header;
 
-               if (pipeline->use_chain_dma)
+               if (pipeline->use_chain_dma) {
+                       dev_warn(sdev->dev, "use_chain_dma set for schduler %s",
+                                swidget->widget->name);
+                       mutex_unlock(&ipc4_data->pipeline_state_mutex);
                        return 0;
+               }
 
                header = SOF_IPC4_GLB_PIPE_INSTANCE_ID(swidget->instance_id);
                header |= SOF_IPC4_MSG_TYPE_SET(SOF_IPC4_GLB_DELETE_PIPELINE);