thermal: return an error on failure to register thermal class
authorRichard Guy Briggs <rbriggs@redhat.com>
Tue, 12 Feb 2013 19:39:44 +0000 (19:39 +0000)
committerBen Hutchings <ben@decadent.org.uk>
Thu, 25 Apr 2013 19:25:43 +0000 (20:25 +0100)
commit da28d966f6aa942ae836d09729f76a1647932309 upstream.

The return code from the registration of the thermal class is used to
unallocate resources, but this failure isn't passed back to the caller of
thermal_init.  Return this failure back to the caller.

This bug was introduced in changeset 4cb18728 which overwrote the return code
when the variable was re-used to catch the return code of the registration of
the genetlink thermal socket family.

Signed-off-by: Richard Guy Briggs <rbriggs@redhat.com>
Signed-off-by: Zhang Rui <rui.zhang@intel.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/thermal/thermal_sys.c

index dd9a574..f6fb292 100644 (file)
@@ -1399,6 +1399,7 @@ static int __init thermal_init(void)
                idr_destroy(&thermal_cdev_idr);
                mutex_destroy(&thermal_idr_lock);
                mutex_destroy(&thermal_list_lock);
+               return result;
        }
        result = genetlink_init();
        return result;