| From 3ddb7b7ed566c6dd3255de47c29b1ac91e6f5f30 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 6 Nov 2024 09:46:54 +0800 |
| Subject: ASoC: stm: Prevent potential division by zero in |
| stm32_sai_mclk_round_rate() |
| |
| From: Luo Yifan <luoyifan@cmss.chinamobile.com> |
| |
| [ Upstream commit 63c1c87993e0e5bb11bced3d8224446a2bc62338 ] |
| |
| This patch checks if div is less than or equal to zero (div <= 0). If |
| div is zero or negative, the function returns -EINVAL, ensuring the |
| division operation (*prate / div) is safe to perform. |
| |
| Signed-off-by: Luo Yifan <luoyifan@cmss.chinamobile.com> |
| Link: https://patch.msgid.link/20241106014654.206860-1-luoyifan@cmss.chinamobile.com |
| Signed-off-by: Mark Brown <broonie@kernel.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| sound/soc/stm/stm32_sai_sub.c | 4 ++-- |
| 1 file changed, 2 insertions(+), 2 deletions(-) |
| |
| diff --git a/sound/soc/stm/stm32_sai_sub.c b/sound/soc/stm/stm32_sai_sub.c |
| index 3aa1cf2624020..3a7f0102b4c5c 100644 |
| --- a/sound/soc/stm/stm32_sai_sub.c |
| +++ b/sound/soc/stm/stm32_sai_sub.c |
| @@ -380,8 +380,8 @@ static long stm32_sai_mclk_round_rate(struct clk_hw *hw, unsigned long rate, |
| int div; |
| |
| div = stm32_sai_get_clk_div(sai, *prate, rate); |
| - if (div < 0) |
| - return div; |
| + if (div <= 0) |
| + return -EINVAL; |
| |
| mclk->freq = *prate / div; |
| |
| -- |
| 2.43.0 |
| |