[PATCH 2/8 v4] thermal: rcar: check every rcar_thermal_update_temp() return value

2015-12-07 Thread Kuninori Morimoto
From: Kuninori Morimoto 

Signed-off-by: Kuninori Morimoto 
---
v3 -> v4

 - add 1line between int <-> return

 drivers/thermal/rcar_thermal.c | 18 ++
 1 file changed, 14 insertions(+), 4 deletions(-)

diff --git a/drivers/thermal/rcar_thermal.c b/drivers/thermal/rcar_thermal.c
index ac8d1eb..a1a93f3 100644
--- a/drivers/thermal/rcar_thermal.c
+++ b/drivers/thermal/rcar_thermal.c
@@ -210,8 +210,12 @@ static int rcar_thermal_get_temp(struct 
thermal_zone_device *zone, int *temp)
 {
struct rcar_thermal_priv *priv = rcar_zone_to_priv(zone);
 
-   if (!rcar_has_irq_support(priv) || rcar_force_update_temp(priv))
-   rcar_thermal_update_temp(priv);
+   if (!rcar_has_irq_support(priv) || rcar_force_update_temp(priv)) {
+   int ret = rcar_thermal_update_temp(priv);
+
+   if (ret < 0)
+   return ret;
+   }
 
mutex_lock(>lock);
*temp =  MCELSIUS((priv->ctemp * 5) - 65);
@@ -305,11 +309,15 @@ static void rcar_thermal_work(struct work_struct *work)
 {
struct rcar_thermal_priv *priv;
int cctemp, nctemp;
+   int ret;
 
priv = container_of(work, struct rcar_thermal_priv, work.work);
 
rcar_thermal_get_temp(priv->zone, );
-   rcar_thermal_update_temp(priv);
+   ret = rcar_thermal_update_temp(priv);
+   if (ret < 0)
+   return;
+
rcar_thermal_irq_enable(priv);
 
rcar_thermal_get_temp(priv->zone, );
@@ -427,7 +435,9 @@ static int rcar_thermal_probe(struct platform_device *pdev)
mutex_init(>lock);
INIT_LIST_HEAD(>list);
INIT_DELAYED_WORK(>work, rcar_thermal_work);
-   rcar_thermal_update_temp(priv);
+   ret = rcar_thermal_update_temp(priv);
+   if (ret < 0)
+   goto error_unregister;
 
priv->zone = thermal_zone_device_register("rcar_thermal",
1, 0, priv,
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 2/8 v4] thermal: rcar: check every rcar_thermal_update_temp() return value

2015-12-07 Thread Kuninori Morimoto
From: Kuninori Morimoto 

Signed-off-by: Kuninori Morimoto 
---
v3 -> v4

 - add 1line between int <-> return

 drivers/thermal/rcar_thermal.c | 18 ++
 1 file changed, 14 insertions(+), 4 deletions(-)

diff --git a/drivers/thermal/rcar_thermal.c b/drivers/thermal/rcar_thermal.c
index ac8d1eb..a1a93f3 100644
--- a/drivers/thermal/rcar_thermal.c
+++ b/drivers/thermal/rcar_thermal.c
@@ -210,8 +210,12 @@ static int rcar_thermal_get_temp(struct 
thermal_zone_device *zone, int *temp)
 {
struct rcar_thermal_priv *priv = rcar_zone_to_priv(zone);
 
-   if (!rcar_has_irq_support(priv) || rcar_force_update_temp(priv))
-   rcar_thermal_update_temp(priv);
+   if (!rcar_has_irq_support(priv) || rcar_force_update_temp(priv)) {
+   int ret = rcar_thermal_update_temp(priv);
+
+   if (ret < 0)
+   return ret;
+   }
 
mutex_lock(>lock);
*temp =  MCELSIUS((priv->ctemp * 5) - 65);
@@ -305,11 +309,15 @@ static void rcar_thermal_work(struct work_struct *work)
 {
struct rcar_thermal_priv *priv;
int cctemp, nctemp;
+   int ret;
 
priv = container_of(work, struct rcar_thermal_priv, work.work);
 
rcar_thermal_get_temp(priv->zone, );
-   rcar_thermal_update_temp(priv);
+   ret = rcar_thermal_update_temp(priv);
+   if (ret < 0)
+   return;
+
rcar_thermal_irq_enable(priv);
 
rcar_thermal_get_temp(priv->zone, );
@@ -427,7 +435,9 @@ static int rcar_thermal_probe(struct platform_device *pdev)
mutex_init(>lock);
INIT_LIST_HEAD(>list);
INIT_DELAYED_WORK(>work, rcar_thermal_work);
-   rcar_thermal_update_temp(priv);
+   ret = rcar_thermal_update_temp(priv);
+   if (ret < 0)
+   goto error_unregister;
 
priv->zone = thermal_zone_device_register("rcar_thermal",
1, 0, priv,
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/