diff options
| author | Guenter Roeck <linux@roeck-us.net> | 2026-06-29 16:18:18 -0700 |
|---|---|---|
| committer | Guenter Roeck <linux@roeck-us.net> | 2026-06-29 16:37:43 -0700 |
| commit | fe87b8dc67f1b2c64e76a66e78468c533d3c44ca (patch) | |
| tree | a918e2b955aa970c11f6c8afd8e405353b2ff316 /lib | |
| parent | 9ef7dacd44216bf5ea05c8aef49eba4d145f4047 (diff) | |
hwmon: (aspeed-g6-pwm-tach) Guard fan RPM calculation against divide-by-zero
Sashiko reports:
In the aspeed-g6-pwm-tacho driver, the aspeed_tach_val_to_rpm() function
calculates the fan RPM using the tachometer value. However, it does not
check if the tachometer value is zero before performing the division.
If the hardware reports a tachometer value of 0 (which can happen due to
an extremely fast pulse, a stuck edge, or a hardware glitch), the
calculated tach_div evaluates to 0. The subsequent call to do_div() with
tach_div as the divisor triggers a divide-by-zero exception, leading to
a kernel panic.
Check the divisor against zero to fix the problem.
Fixes: 7e1449cd15d1 ("hwmon: (aspeed-g6-pwm-tacho): Support for ASPEED g6 PWM/Fan tach")
Cc: Billy Tsai <billy_tsai@aspeedtech.com>
Reported-by: Sashiko <sashiko-bot@kernel.org>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Diffstat (limited to 'lib')
0 files changed, 0 insertions, 0 deletions
