Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bba527e4 authored by Yongqiang Liu's avatar Yongqiang Liu Committed by Greg Kroah-Hartman
Browse files

net: defxx: Fix missing err handling in dfx_init()



[ Upstream commit ae18dcdff0f8d7e84cd3fd9f496518b5e72d185d ]

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: e89a2cfb ("[TC] defxx: TURBOchannel support")
Signed-off-by: default avatarYongqiang Liu <liuyongqiang13@huawei.com>
Reviewed-by: default avatarJiri Pirko <jiri@nvidia.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent f54731a7
Loading
Loading
Loading
Loading
+18 −4
Original line number Diff line number Diff line
@@ -3844,10 +3844,24 @@ static int dfx_init(void)
	int status;

	status = pci_register_driver(&dfx_pci_driver);
	if (!status)
	if (status)
		goto err_pci_register;

	status = eisa_driver_register(&dfx_eisa_driver);
	if (!status)
	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;
}