mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] ASoC: fsl_asrc_dma: fix error handling for DMA channel retrieval
@ 2026-10-28  2:59 shengjiu.wang
  2026-11-06  5:50 ` Chancel Liu
  0 siblings, 1 reply; 2+ messages in thread
From: shengjiu.wang @ 2026-10-28  2:59 UTC (permalink / raw)
  To: shengjiu.wang, Xiubo.Lee, festevam, nicoleotsuka, lgirdwood,
	broonie, perex, tiwai, linux-sound, linuxppc-dev, linux-kernel

From: Shengjiu Wang <shengjiu.wang@nxp.com>

The original check used `if (!tmp_chan)`, which only catches NULL pointers.
However `asrc->get_dma_channel()` returns an error pointer. The NULL check
will always succeed, so replace it with `IS_ERR(tmp_chan)` to correctly
detect errors.

Fixes: b4136c0d69ea ("ASoC: fsl_asrc: check the second front-end DMA channel")
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
---
 sound/soc/fsl/fsl_asrc_dma.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/soc/fsl/fsl_asrc_dma.c b/sound/soc/fsl/fsl_asrc_dma.c
index b417de6abebe..b39d3d76d26a 100644
--- a/sound/soc/fsl/fsl_asrc_dma.c
+++ b/sound/soc/fsl/fsl_asrc_dma.c
@@ -251,7 +251,7 @@ static int fsl_asrc_dma_hw_params(struct snd_soc_component *component,
 
 		/* Get DMA request of Front-End */
 		tmp_chan = asrc->get_dma_channel(pair, dir);
-		if (!tmp_chan) {
+		if (IS_ERR(tmp_chan)) {
 			dma_release_channel(pair->dma_chan[!dir]);
 			pair->dma_chan[!dir] = NULL;
 			return -EINVAL;
-- 
2.34.1


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] ASoC: fsl_asrc_dma: fix error handling for DMA channel retrieval
  2026-10-28  2:59 [PATCH] ASoC: fsl_asrc_dma: fix error handling for DMA channel retrieval shengjiu.wang
@ 2026-11-06  5:50 ` Chancel Liu
  0 siblings, 0 replies; 2+ messages in thread
From: Chancel Liu @ 2026-11-06  5:50 UTC (permalink / raw)
  To: shengjiu.wang, shengjiu.wang, Xiubo.Lee, festevam, nicoleotsuka,
	lgirdwood, broonie, perex, tiwai, linux-sound, linuxppc-dev,
	linux-kernel

On 10/28/2026 10:59 AM, shengjiu.wang@oss.nxp.com wrote:
> From: Shengjiu Wang <shengjiu.wang@nxp.com>
> 
> The original check used `if (!tmp_chan)`, which only catches NULL pointers.
> However `asrc->get_dma_channel()` returns an error pointer. The NULL check
> will always succeed, so replace it with `IS_ERR(tmp_chan)` to correctly
> detect errors.
> 
> Fixes: b4136c0d69ea ("ASoC: fsl_asrc: check the second front-end DMA channel")
> Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>

Reviewed-by: Chancel Liu <chancel.liu@gmail.com>

Regards,
Chancel Liu

> ---
>  sound/soc/fsl/fsl_asrc_dma.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/sound/soc/fsl/fsl_asrc_dma.c b/sound/soc/fsl/fsl_asrc_dma.c
> index b417de6abebe..b39d3d76d26a 100644
> --- a/sound/soc/fsl/fsl_asrc_dma.c
> +++ b/sound/soc/fsl/fsl_asrc_dma.c
> @@ -251,7 +251,7 @@ static int fsl_asrc_dma_hw_params(struct snd_soc_component *component,
>  
>  		/* Get DMA request of Front-End */
>  		tmp_chan = asrc->get_dma_channel(pair, dir);
> -		if (!tmp_chan) {
> +		if (IS_ERR(tmp_chan)) {
>  			dma_release_channel(pair->dma_chan[!dir]);
>  			pair->dma_chan[!dir] = NULL;
>  			return -EINVAL;

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-11-06  5:51 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-10-28  2:59 [PATCH] ASoC: fsl_asrc_dma: fix error handling for DMA channel retrieval shengjiu.wang
2026-11-06  5:50 ` Chancel Liu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®