greybus: call put_device() on error
authorAlex Elder <elder@linaro.org>
Tue, 9 Sep 2014 18:55:06 +0000 (13:55 -0500)
committerGreg Kroah-Hartman <greg@kroah.com>
Tue, 9 Sep 2014 22:09:06 +0000 (15:09 -0700)
As soon as we've called device_initialize() we're required to call
put_device() in order to drop our reference to the device structure.
This was missed in the error path in greybus_new_module().  Fix that.

Signed-off-by: Alex Elder <elder@linaro.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
drivers/staging/greybus/core.c

index 95655e2..3bb8f9c 100644 (file)
@@ -440,6 +440,7 @@ struct greybus_device *greybus_new_module(struct device *parent,
 
        return gdev;
 error:
+       put_device(&gdev->dev);
        greybus_module_release(&gdev->dev);
        return NULL;
 }