Skip to content

Commit e1359bc

Browse files
Yongqiang Liugregkh
authored andcommitted
net: defxx: Fix missing err handling in dfx_init()
[ Upstream commit ae18dcd ] 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: e89a2cf ("[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> Signed-off-by: Sasha Levin <sashal@kernel.org>
1 parent c65603a commit e1359bc

File tree

1 file changed

+18
-4
lines changed

1 file changed

+18
-4
lines changed

drivers/net/fddi/defxx.c

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3831,10 +3831,24 @@ static int dfx_init(void)
38313831
int status;
38323832

38333833
status = pci_register_driver(&dfx_pci_driver);
3834-
if (!status)
3835-
status = eisa_driver_register(&dfx_eisa_driver);
3836-
if (!status)
3837-
status = tc_register_driver(&dfx_tc_driver);
3834+
if (status)
3835+
goto err_pci_register;
3836+
3837+
status = eisa_driver_register(&dfx_eisa_driver);
3838+
if (status)
3839+
goto err_eisa_register;
3840+
3841+
status = tc_register_driver(&dfx_tc_driver);
3842+
if (status)
3843+
goto err_tc_register;
3844+
3845+
return 0;
3846+
3847+
err_tc_register:
3848+
eisa_driver_unregister(&dfx_eisa_driver);
3849+
err_eisa_register:
3850+
pci_unregister_driver(&dfx_pci_driver);
3851+
err_pci_register:
38383852
return status;
38393853
}
38403854

0 commit comments

Comments
 (0)