[ldv-project] [PATCH 3/3] staging: dgap: fix error handling in dgap_init_module()

Alexey Khoroshilov khoroshilov at ispras.ru
Mon Feb 24 00:21:53 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_driver.c | 12 ++----------
 1 file changed, 2 insertions(+), 10 deletions(-)

diff --git a/drivers/staging/dgap/dgap_driver.c b/drivers/staging/dgap/dgap_driver.c
index 136c879b560c..cc6933db6feb 100644
--- a/drivers/staging/dgap/dgap_driver.c
+++ b/drivers/staging/dgap/dgap_driver.c
@@ -254,18 +254,10 @@ 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");
-
+	if (rc < 0)
 		dgap_cleanup_module();
-	}
-	else {
+	else
 		dgap_create_driver_sysfiles(&dgap_driver);
-	}
   
 	DPR_INIT(("Finished init_module. Returning %d\n", rc));
 	return (rc);
-- 
1.8.3.2




More information about the ldv-project mailing list