[SCSI] mpt fusion: deregister from transport layer if PCI registration failed
The mptspi and mptsas drivers are modified to deregister from transport layer if registration with PCI driver failed Signed-off-by: Sathya Prakash <sathya.prakash@lsi.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
This commit is contained in:
parent
0c8db6beb8
commit
57ce21bfcc
2 changed files with 14 additions and 2 deletions
|
@ -3301,6 +3301,8 @@ static struct pci_driver mptsas_driver = {
|
||||||
static int __init
|
static int __init
|
||||||
mptsas_init(void)
|
mptsas_init(void)
|
||||||
{
|
{
|
||||||
|
int error;
|
||||||
|
|
||||||
show_mptmod_ver(my_NAME, my_VERSION);
|
show_mptmod_ver(my_NAME, my_VERSION);
|
||||||
|
|
||||||
mptsas_transport_template =
|
mptsas_transport_template =
|
||||||
|
@ -3324,7 +3326,11 @@ mptsas_init(void)
|
||||||
": Registered for IOC reset notifications\n"));
|
": Registered for IOC reset notifications\n"));
|
||||||
}
|
}
|
||||||
|
|
||||||
return pci_register_driver(&mptsas_driver);
|
error = pci_register_driver(&mptsas_driver);
|
||||||
|
if (error)
|
||||||
|
sas_release_transport(mptsas_transport_template);
|
||||||
|
|
||||||
|
return error;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void __exit
|
static void __exit
|
||||||
|
|
|
@ -1524,6 +1524,8 @@ static struct pci_driver mptspi_driver = {
|
||||||
static int __init
|
static int __init
|
||||||
mptspi_init(void)
|
mptspi_init(void)
|
||||||
{
|
{
|
||||||
|
int error;
|
||||||
|
|
||||||
show_mptmod_ver(my_NAME, my_VERSION);
|
show_mptmod_ver(my_NAME, my_VERSION);
|
||||||
|
|
||||||
mptspi_transport_template = spi_attach_transport(&mptspi_transport_functions);
|
mptspi_transport_template = spi_attach_transport(&mptspi_transport_functions);
|
||||||
|
@ -1544,7 +1546,11 @@ mptspi_init(void)
|
||||||
": Registered for IOC reset notifications\n"));
|
": Registered for IOC reset notifications\n"));
|
||||||
}
|
}
|
||||||
|
|
||||||
return pci_register_driver(&mptspi_driver);
|
error = pci_register_driver(&mptspi_driver);
|
||||||
|
if (error)
|
||||||
|
spi_release_transport(mptspi_transport_template);
|
||||||
|
|
||||||
|
return error;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=*/
|
/*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=*/
|
||||||
|
|
Reference in a new issue