Hello Durgadoss R,

This is a semi-automatic email about new static checker warnings.

The patch 9b70dfa68ae8: "Thermal: Update binding logic based on 
platform data" from Sep 18, 2012, leads to the following Smatch 
complaint:

drivers/thermal/thermal_sys.c:292 bind_tz()
         error: we previously assumed 'tzp' could be null (see line 283)

drivers/thermal/thermal_sys.c
   282          /* If there is no platform data, try to use ops->bind */
   283          if (!tzp && tz->ops->bind) {
                    ^^^^
New check.

   284                  list_for_each_entry(pos, &thermal_cdev_list, node) {
   285                          ret = tz->ops->bind(tz, pos);
   286                          if (ret)
   287                                  print_bind_err_msg(tz, pos, ret);
   288                  }
   289                  goto exit;
   290          }
   291  
   292          if (!tzp->tbp)
                     ^^^^^^^^
New dereference.

   293                  goto exit;
   294  

There are also some locking bugs which need to be fixed as well.

drivers/thermal/thermal_sys.c:268 bind_cdev() warn: inconsistent returns 
mutex:&thermal_list_lock: locked (256) unlocked (268)
drivers/thermal/thermal_sys.c:396 update_temperature() warn: inconsistent 
returns mutex:&tz->lock: locked (390) unlocked (396)

regards,
dan carpenter


--
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/

Reply via email to