Skip to content
Commit 5ce91714 authored by Pali Rohár's avatar Pali Rohár Committed by Guenter Roeck
Browse files

hwmon: (dell-smm) Cache fan_type() calls and change fan detection



On more Dell machines (e.g. Dell Precision M3800) fan_type() call is too
expensive (CPU is too long in SMM mode) and cause kernel to hang. This is
bug in Dell SMM or BIOS.

This patch caches type for each fan (as it should not change) and changes
the way how fan presense is detected. First it try function fan_status()
as was before commit f989e554 ("i8k: Add support for fan labels"). And
if that fails fallback to fan_type(). *_status() functions can fail in case
fan is not currently accessible (e.g. present on GPU which is currently
turned off).

Reported-by: default avatarTolga Cakir <cevelnet@gmail.com>
Signed-off-by: default avatarPali Rohár <pali.rohar@gmail.com>
Link: https://bugzilla.kernel.org/show_bug.cgi?id=112021


Cc: stable@vger.kernel.org # v4.0+, will need backport
Tested-by: default avatarTolga Cakir <cevelnet@gmail.com>
Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
parent 2744d2fd
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment