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)
committerZhang Rui <rui.zhang@intel.com>
Fri, 22 Feb 2013 09:38:40 +0000 (17:38 +0800)
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>
drivers/thermal/thermal_sys.c

index 6472e7e..1a19a2f 100644 (file)
@@ -1875,6 +1875,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;