From: Cornelia Huck Date: Mon, 27 Nov 2006 09:35:08 +0000 (+0100) Subject: driver core fixes: device_register() retval check in platform.c X-Git-Tag: v2.6.21-rc1~92^2~30^2~14 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fbfb14455391b89edcf37327526988dea7849532;p=linux-2.6 driver core fixes: device_register() retval check in platform.c Check the return value of device_register() in platform_bus_init(). Signed-off-by: Cornelia Huck Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/base/platform.c b/drivers/base/platform.c index f9c903ba9f..30480f6f2a 100644 --- a/drivers/base/platform.c +++ b/drivers/base/platform.c @@ -611,8 +611,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