[2/9] driver core fixes: device_register() retval check inplatform.c

From: Cornelia Huck
Date: Fri Sep 22 2006 - 05:37:45 EST


From: Cornelia Huck <cornelia.huck@xxxxxxxxxx>

Check the return value of device_register() in platform_bus_init().

Signed-off-by: Cornelia Huck <cornelia.huck@xxxxxxxxxx>

---
drivers/base/platform.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)

--- linux-2.6-CH.orig/drivers/base/platform.c
+++ linux-2.6-CH/drivers/base/platform.c
@@ -563,8 +563,15 @@ EXPORT_SYMBOL_GPL(platform_bus_type);

int __init platform_bus_init(void)
{
- device_register(&platform_bus);
- return bus_register(&platform_bus_type);
+ int error;
+
+ error = device_register(&platform_bus);
+ if (error)
+ return error;
+ error = bus_register(&platform_bus_type);
+ if (error)
+ device_unregister(&platform_bus);
+ return error;
}

#ifndef ARCH_HAS_DMA_GET_REQUIRED_MASK
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/