This is a note to let you know that I've just added the patch titled ASoC: codecs: wcd938x: fix unbind tear down order to the 6.1-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: asoc-codecs-wcd938x-fix-unbind-tear-down-order.patch and it can be found in the queue-6.1 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. >From fa2f8a991ba4aa733ac1c3b1be0c86148aa4c52c Mon Sep 17 00:00:00 2001 From: Johan Hovold <johan+linaro@xxxxxxxxxx> Date: Tue, 3 Oct 2023 17:55:53 +0200 Subject: ASoC: codecs: wcd938x: fix unbind tear down order From: Johan Hovold <johan+linaro@xxxxxxxxxx> commit fa2f8a991ba4aa733ac1c3b1be0c86148aa4c52c upstream. Make sure to deregister the component before tearing down the resources it depends on during unbind(). Fixes: 16572522aece ("ASoC: codecs: wcd938x-sdw: add SoundWire driver") Cc: stable@xxxxxxxxxxxxxxx # 5.14 Cc: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx> Signed-off-by: Johan Hovold <johan+linaro@xxxxxxxxxx> Link: https://lore.kernel.org/r/20231003155558.27079-3-johan+linaro@xxxxxxxxxx Signed-off-by: Mark Brown <broonie@xxxxxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- sound/soc/codecs/wcd938x.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/sound/soc/codecs/wcd938x.c +++ b/sound/soc/codecs/wcd938x.c @@ -3510,10 +3510,10 @@ static void wcd938x_unbind(struct device { struct wcd938x_priv *wcd938x = dev_get_drvdata(dev); + snd_soc_unregister_component(dev); device_link_remove(dev, wcd938x->txdev); device_link_remove(dev, wcd938x->rxdev); device_link_remove(wcd938x->rxdev, wcd938x->txdev); - snd_soc_unregister_component(dev); component_unbind_all(dev, wcd938x); } Patches currently in stable-queue which might be from johan+linaro@xxxxxxxxxx are queue-6.1/asoc-codecs-wcd938x-fix-unbind-tear-down-order.patch queue-6.1/asoc-codecs-wcd938x-sdw-fix-use-after-free-on-driver-unbind.patch queue-6.1/asoc-codecs-wcd938x-drop-bogus-bind-error-handling.patch queue-6.1/asoc-codecs-wcd938x-fix-resource-leaks-on-bind-errors.patch queue-6.1/asoc-codecs-wcd938x-sdw-fix-runtime-pm-imbalance-on-probe-errors.patch queue-6.1/regmap-fix-null-deref-on-lookup.patch