If device_register() fails then call put_device(). See comment to device_register. Signed-off-by: Vasiliy Kulikov <segooon@xxxxxxxxx> --- 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 majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html