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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am 09.07.22 um 04:31 schrieb Mr. B34r:
From: Vannoonnoo <mr.b34r@xxxxxxxxxxxx>

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.

Good catch, just some minor style problems. Your Signed-of-by line is missing for example.

There is a checkpath.pl script in the Linux kernel source which can point out such trivial mistakes.

Please run it on your patch and resend, apart from that looks good to me.

Christian.


---
  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),




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux