[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.22.394.2211281629120.3532114@eliteleevi.tm.intel.com>
Date: Mon, 28 Nov 2022 16:41:33 +0200 (EET)
From: Kai Vehmanen <kai.vehmanen@...ux.intel.com>
To: Ricardo Ribalda <ribalda@...omium.org>
cc: Liam Girdwood <lgirdwood@...il.com>,
Pierre-Louis Bossart <pierre-louis.bossart@...ux.intel.com>,
Mark Brown <broonie@...nel.org>,
Daniel Baluta <daniel.baluta@....com>,
Kai Vehmanen <kai.vehmanen@...ux.intel.com>,
Peter Ujfalusi <peter.ujfalusi@...ux.intel.com>,
Jaroslav Kysela <perex@...ex.cz>,
Takashi Iwai <tiwai@...e.com>,
Bard Liao <yung-chuan.liao@...ux.intel.com>,
Ranjani Sridharan <ranjani.sridharan@...ux.intel.com>,
Alsa-devel <alsa-devel@...a-project.org>,
linux-kernel@...r.kernel.org, stable@...r.kernel.org,
sound-open-firmware@...a-project.org
Subject: Re: [PATCH v5] ASoC: SOF: Fix deadlock when shutdown a frozen
userspace
Hi,
On Mon, 28 Nov 2022, 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.
[...]
> /*
> - * make sure clients and machine driver(s) are unregistered to force
> - * all userspace devices to be closed prior to the DSP shutdown sequence
> + * make sure clients are unregistered prior to the DSP shutdown
> + * sequence.
> */
> sof_unregister_clients(sdev);
>
> - snd_sof_machine_unregister(sdev, pdata);
> -
> if (sdev->fw_state == SOF_FW_BOOT_COMPLETE)
this is problematic as removing that machine_unregister() call will (at
least) bring back an issue on Intel platforms (rare problem hitting S5 on
Chromebooks).
Not sure how to solve this, but if that call needs to be removed
(unsafe to call at shutdown), then we need to rework how SOF
does the cleanup.
Br, Kai
Powered by blists - more mailing lists