Commit 2290c377 authored by Luiz Capitulino's avatar Luiz Capitulino Committed by Greg Kroah-Hartman

[PATCH] USB: missing check in usb/serial/usb-serial.c.

 This patch add a missing check in the call to bus_register() and
not initialise `result' (which is not necessary).
Signed-off-by: default avatarLuiz Capitulino <lcapitulino@conectiva.com.br>
Signed-off-by: default avatarGreg Kroah-Hartman <greg@kroah.com>
parent 3bac8d2b
......@@ -1217,7 +1217,7 @@ struct tty_driver *usb_serial_tty_driver;
static int __init usb_serial_init(void)
{
int i;
int result = 0;
int result;
usb_serial_tty_driver = alloc_tty_driver(SERIAL_TTY_MINORS);
if (!usb_serial_tty_driver)
......@@ -1228,13 +1228,17 @@ static int __init usb_serial_init(void)
serial_table[i] = NULL;
}
bus_register(&usb_serial_bus_type);
result = bus_register(&usb_serial_bus_type);
if (result) {
err("%s - registering bus driver failed", __FUNCTION__);
goto exit_bus;
}
/* register the generic driver, if we should */
result = usb_serial_generic_register(debug);
if (result < 0) {
err("%s - registering generic driver failed", __FUNCTION__);
goto exit;
goto exit_generic;
}
usb_serial_tty_driver->owner = THIS_MODULE;
......@@ -1252,7 +1256,7 @@ static int __init usb_serial_init(void)
result = tty_register_driver(usb_serial_tty_driver);
if (result) {
err("%s - tty_register_driver failed", __FUNCTION__);
goto exit_generic;
goto exit_reg_driver;
}
/* register the USB driver */
......@@ -1269,10 +1273,13 @@ static int __init usb_serial_init(void)
exit_tty:
tty_unregister_driver(usb_serial_tty_driver);
exit_generic:
exit_reg_driver:
usb_serial_generic_deregister();
exit:
exit_generic:
bus_unregister(&usb_serial_bus_type);
exit_bus:
err ("%s - returning with error %d", __FUNCTION__, result);
put_tty_driver(usb_serial_tty_driver);
return result;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment