[4/6] thermal: core: stop polling timer for disabled thermal zone

Message ID 20200430063229.6182-5-rui.zhang@intel.com
State New
Headers show
Series
  • thermal: improve handling of disabled thermal zone
Related show

Commit Message

Zhang Rui April 30, 2020, 6:32 a.m.
For a disabled thermal zone, thermal_zone_device_update() should do
nothing but cancelling the polling timer.

Signed-off-by: Zhang Rui <rui.zhang@intel.com>
---
 drivers/thermal/thermal_core.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Patch

diff --git a/drivers/thermal/thermal_core.c b/drivers/thermal/thermal_core.c
index 04a16a9..5f7a867 100644
--- a/drivers/thermal/thermal_core.c
+++ b/drivers/thermal/thermal_core.c
@@ -508,7 +508,7 @@  void thermal_zone_device_update(struct thermal_zone_device *tz,
 	int count;
 
 	if (should_stop_polling(tz))
-		return;
+		goto update_polling;
 
 	if (atomic_read(&in_suspend))
 		return;
@@ -525,6 +525,7 @@  void thermal_zone_device_update(struct thermal_zone_device *tz,
 	for (count = 0; count < tz->trips; count++)
 		handle_thermal_trip(tz, count);
 
+update_polling:
 	/*
 	 * Alright, we handled all the trips successfully.
 	 * So, start monitoring again.