On 11/30/22 09:47, Ricardo Ribalda wrote: > During kexec(), the userspace is frozen. Therefore we cannot wait for it > to complete. > > Avoid running snd_sof_machine_unregister during shutdown. That's not what you are doing below - you only unregister clients conditionally. I don't know if that's a stale commit message and can't reconcile it either with the initial discussions in this thread where we were referring to snd_card_disconnect(), etc? Confused. > @@ -484,7 +485,8 @@ int snd_sof_device_shutdown(struct device *dev) > * make sure clients and machine driver(s) are unregistered to force > * all userspace devices to be closed prior to the DSP shutdown sequence > */ > - sof_unregister_clients(sdev); > + if (!kexec_with_frozen_processes()) > + sof_unregister_clients(sdev); > > snd_sof_machine_unregister(sdev, pdata); > >