[ldv-project] [PATCH 3/3] staging: dgap: fix error handling in dgap_init_module()
Alexey Khoroshilov
khoroshilov at ispras.ru
Mon Mar 3 01:08:08 MSK 2014
No need to call pci_unregister_driver() if pci_register_driver() failed.
Signed-off-by: Alexey Khoroshilov <khoroshilov at ispras.ru>
---
drivers/staging/dgap/dgap.c | 13 ++++---------
1 file changed, 4 insertions(+), 9 deletions(-)
diff --git a/drivers/staging/dgap/dgap.c b/drivers/staging/dgap/dgap.c
index b4157d7..510e8b3 100644
--- a/drivers/staging/dgap/dgap.c
+++ b/drivers/staging/dgap/dgap.c
@@ -535,18 +535,13 @@ int dgap_init_module(void)
* If something went wrong in the scan, bail out of driver.
*/
if (rc < 0) {
- /* Only unregister the pci driver if it was actually registered. */
- if (dgap_NumBoards)
- pci_unregister_driver(&dgap_driver);
- else
- printk("WARNING: dgap driver load failed. No DGAP boards found.\n");
-
dgap_cleanup_module();
- } else {
- dgap_create_driver_sysfiles(&dgap_driver);
- dgap_driver_state = DRIVER_READY;
+ return rc;
}
+ dgap_create_driver_sysfiles(&dgap_driver);
+ dgap_driver_state = DRIVER_READY;
+
return rc;
}
--
1.8.3.2
More information about the ldv-project
mailing list