Re: [PATCH V2 06/13] thermal/drivers/hisi: Remove pointless lock

From: Eduardo Valentin
Date: Thu Sep 07 2017 - 23:16:54 EST


On Mon, Sep 04, 2017 at 09:56:05PM +0200, Daniel Lezcano wrote:
> The threaded interrupt inspect the sensors structure to look in the temp
> threshold field, but this field is read-only in all the code, except in the
> probe function before the threaded interrupt is set. In other words there
> is not race window in the threaded interrupt when reading the field value.


Sure? Not even if you have a userspace process read the zone temp via
sysfs and the polling workqueue reading the temp too?

>
> Signed-off-by: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
> Reviewed-by: Leo Yan <leo.yan@xxxxxxxxxx>
> ---
> drivers/thermal/hisi_thermal.c | 6 +-----
> 1 file changed, 1 insertion(+), 5 deletions(-)
>
> diff --git a/drivers/thermal/hisi_thermal.c b/drivers/thermal/hisi_thermal.c
> index f523197..9ec5f29 100644
> --- a/drivers/thermal/hisi_thermal.c
> +++ b/drivers/thermal/hisi_thermal.c
> @@ -221,14 +221,10 @@ static irqreturn_t hisi_thermal_alarm_irq(int irq, void *dev)
> static irqreturn_t hisi_thermal_alarm_irq_thread(int irq, void *dev)
> {
> struct hisi_thermal_data *data = dev;
> - struct hisi_thermal_sensor *sensor;
> -
> - mutex_lock(&data->thermal_lock);
> - sensor = &data->sensors;
> + struct hisi_thermal_sensor *sensor = &data->sensors;
>
> dev_crit(&data->pdev->dev, "THERMAL ALARM: T > %d\n",
> sensor->thres_temp);
> - mutex_unlock(&data->thermal_lock);
>
> thermal_zone_device_update(data->sensors.tzd,
> THERMAL_EVENT_UNSPECIFIED);
> --
> 2.7.4
>