Messages in this thread | | | Date | Tue, 25 Sep 2012 23:27:47 +0300 | From | Dan Carpenter <> | Subject | re: Thermal: Update binding logic based on platform data |
| |
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
| |