]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ASoC: Intel: catpt: Fix error path in hw_params()
authorCezary Rojewski <cezary.rojewski@intel.com>
Wed, 26 Nov 2025 09:55:20 +0000 (10:55 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 18 Dec 2025 13:03:24 +0000 (14:03 +0100)
[ Upstream commit 86a5b621be658fc8fe594ca6db317d64de30cce1 ]

Do not leave any resources hanging on the DSP side if
applying user settings fails.

Fixes: 768a3a3b327d ("ASoC: Intel: catpt: Optimize applying user settings")
Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://patch.msgid.link/20251126095523.3925364-4-cezary.rojewski@intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
sound/soc/intel/catpt/pcm.c

index bf734c69c4e095bb0dad63d17c8b1c83fc69c5aa..eb03cecdee281c15d944f1b638f0b0c6d45413cb 100644 (file)
@@ -417,8 +417,10 @@ static int catpt_dai_hw_params(struct snd_pcm_substream *substream,
                return CATPT_IPC_ERROR(ret);
 
        ret = catpt_dai_apply_usettings(dai, stream);
-       if (ret)
+       if (ret) {
+               catpt_ipc_free_stream(cdev, stream->info.stream_hw_id);
                return ret;
+       }
 
        stream->allocated = true;
        return 0;