net: defxx: Fix missing err handling in dfx_init()
When eisa_driver_register() or tc_register_driver() failed,
the modprobe defxx would fail with some err log as follows:
Error: Driver 'defxx' is already registered, aborting...
Fix this issue by adding err hanling in dfx_init().
Fixes: e89a2cfb7d
("[TC] defxx: TURBOchannel support")
Signed-off-by: Yongqiang Liu <liuyongqiang13@huawei.com>
Reviewed-by: Jiri Pirko <jiri@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
44aa5a6dba
commit
ae18dcdff0
|
@ -3831,10 +3831,24 @@ static int dfx_init(void)
|
|||
int status;
|
||||
|
||||
status = pci_register_driver(&dfx_pci_driver);
|
||||
if (!status)
|
||||
status = eisa_driver_register(&dfx_eisa_driver);
|
||||
if (!status)
|
||||
status = tc_register_driver(&dfx_tc_driver);
|
||||
if (status)
|
||||
goto err_pci_register;
|
||||
|
||||
status = eisa_driver_register(&dfx_eisa_driver);
|
||||
if (status)
|
||||
goto err_eisa_register;
|
||||
|
||||
status = tc_register_driver(&dfx_tc_driver);
|
||||
if (status)
|
||||
goto err_tc_register;
|
||||
|
||||
return 0;
|
||||
|
||||
err_tc_register:
|
||||
eisa_driver_unregister(&dfx_eisa_driver);
|
||||
err_eisa_register:
|
||||
pci_unregister_driver(&dfx_pci_driver);
|
||||
err_pci_register:
|
||||
return status;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue