From 9f2bd497bee4b22d0ce4468ccf3bc2e1e7a22339 Mon Sep 17 00:00:00 2001 From: Michael Brunner Date: Wed, 26 Aug 2009 14:29:25 -0700 Subject: [PATCH] --- yaml --- r: 157109 b: refs/heads/master c: 0d288162f2afc42b37aab656f4622c076babbca3 h: refs/heads/master i: 157107: b030fa5e87b3a850ec49a3a0ab48a340a4f4a55f v: v3 --- [refs] | 2 +- trunk/drivers/thermal/thermal_sys.c | 9 ++++++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 800add84fffd..f515deda52d3 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 4ab6c08336535f8c8e42cf45d7adeda882eff06e +refs/heads/master: 0d288162f2afc42b37aab656f4622c076babbca3 diff --git a/trunk/drivers/thermal/thermal_sys.c b/trunk/drivers/thermal/thermal_sys.c index 0a69672097a8..4e83c297ec9e 100644 --- a/trunk/drivers/thermal/thermal_sys.c +++ b/trunk/drivers/thermal/thermal_sys.c @@ -953,7 +953,12 @@ void thermal_zone_device_update(struct thermal_zone_device *tz) mutex_lock(&tz->lock); - tz->ops->get_temp(tz, &temp); + if (tz->ops->get_temp(tz, &temp)) { + /* get_temp failed - retry it later */ + printk(KERN_WARNING PREFIX "failed to read out thermal zone " + "%d\n", tz->id); + goto leave; + } for (count = 0; count < tz->trips; count++) { tz->ops->get_trip_type(tz, count, &trip_type); @@ -1005,6 +1010,8 @@ void thermal_zone_device_update(struct thermal_zone_device *tz) THERMAL_TRIPS_NONE); tz->last_temperature = temp; + + leave: if (tz->passive) thermal_zone_device_set_polling(tz, tz->passive_delay); else if (tz->polling_delay)