[PATCH] drm/amd/pm: Prevent divide by zero

Quan, Evan Evan.Quan at amd.com
Mon Jul 11 03:30:41 UTC 2022


[AMD Official Use Only - General]

Reviewed-by: Evan Quan <evan.quan at amd.com>

> -----Original Message-----
> From: amd-gfx <amd-gfx-bounces at lists.freedesktop.org> On Behalf Of Mr.
> B34r
> Sent: Saturday, July 9, 2022 10:31 AM
> To: amd-gfx at lists.freedesktop.org
> Cc: Vannoonnoo <mr.b34r at kolabnow.com>
> Subject: [PATCH] drm/amd/pm: Prevent divide by zero
> 
> From: Vannoonnoo <mr.b34r at kolabnow.com>
> 
> divide error: 0000 [#1] SMP PTI
> CPU: 3 PID: 78925 Comm: tee Not tainted 5.15.50-1-lts #1
> 5c320a339f0e397222fdfc9449eff04c0b12ea83
> Hardware name: MSI MS-7A59/Z270 SLI PLUS (MS-7A59), BIOS 1.90
> 01/30/2018
> RIP: 0010:smu_v11_0_set_fan_speed_rpm+0x11/0x110 [amdgpu]
> 
> Speed is user-configurable through a file. I accidentally set it to zero, and the
> driver crashed.
> 
> ---
>  drivers/gpu/drm/amd/pm/swsmu/smu11/smu_v11_0.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu11/smu_v11_0.c
> b/drivers/gpu/drm/amd/pm/swsmu/smu11/smu_v11_0.c
> index 5f8809f6990d..69cebdb58c04 100644
> --- a/drivers/gpu/drm/amd/pm/swsmu/smu11/smu_v11_0.c
> +++ b/drivers/gpu/drm/amd/pm/swsmu/smu11/smu_v11_0.c
> @@ -1236,6 +1236,10 @@ int smu_v11_0_set_fan_speed_rpm(struct
> smu_context *smu,
>  	 * - For some Sienna Cichlid SKU, the fan speed cannot be set
>  	 *   lower than 500 RPM.
>  	 */
> +
> +	if (speed == 0)
> +		return -EINVAL;
> +
>  	tach_period = 60 * crystal_clock_freq * 10000 / (8 * speed);
>  	WREG32_SOC15(THM, 0, mmCG_TACH_CTRL,
>  		     REG_SET_FIELD(RREG32_SOC15(THM, 0,
> mmCG_TACH_CTRL),
> --
> 2.36.1


More information about the amd-gfx mailing list