If device_register() fails then call put_device().
See comment to device_register.

Signed-off-by: Vasiliy Kulikov <[email protected]>
---
 I cannot compile this driver, so it is not tested at all.

 drivers/zorro/zorro.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/drivers/zorro/zorro.c b/drivers/zorro/zorro.c
index 6455f3a..e0c2807 100644
--- a/drivers/zorro/zorro.c
+++ b/drivers/zorro/zorro.c
@@ -142,6 +142,7 @@ static int __init amiga_zorro_probe(struct platform_device 
*pdev)
        error = device_register(&bus->dev);
        if (error) {
                pr_err("Zorro: Error registering zorro_bus\n");
+               put_device(&bus->dev);
                kfree(bus);
                return error;
        }
@@ -175,6 +176,7 @@ static int __init amiga_zorro_probe(struct platform_device 
*pdev)
                if (error) {
                        dev_err(&bus->dev, "Error registering device %s\n",
                                z->name);
+                       put_device(&z->dev);
                        continue;
                }
                error = zorro_create_sysfs_dev_files(z);
-- 
1.7.0.4

--
To unsubscribe from this list: send the line "unsubscribe linux-m68k" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to