diff options
author | Andrew Vasquez <andrew.vasquez@qlogic.com> | 2009-06-03 12:55:20 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2009-06-08 15:46:46 -0400 |
commit | ca9e9c3eb118d0cb9dc2e5232f6f2dcaa4b7a5e0 (patch) | |
tree | b022eac4bf1820af0e82671e53f33143e65bc285 /drivers/scsi/qla2xxx/qla_init.c | |
parent | 59e0b8b088031b3b751f0608f797f2581f49a827 (diff) |
[SCSI] qla2xxx: Check status of qla2x00_get_fw_version() call.
Unlike earlier ISPs, recent ISPs (ISP81xx) can in fact fail this
mailbox command.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_init.c')
-rw-r--r-- | drivers/scsi/qla2xxx/qla_init.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c index 34e6508bbab0..415fbf60de11 100644 --- a/drivers/scsi/qla2xxx/qla_init.c +++ b/drivers/scsi/qla2xxx/qla_init.c | |||
@@ -929,13 +929,16 @@ qla2x00_setup_chip(scsi_qla_host_t *vha) | |||
929 | /* Retrieve firmware information. */ | 929 | /* Retrieve firmware information. */ |
930 | if (rval == QLA_SUCCESS) { | 930 | if (rval == QLA_SUCCESS) { |
931 | fw_major_version = ha->fw_major_version; | 931 | fw_major_version = ha->fw_major_version; |
932 | qla2x00_get_fw_version(vha, | 932 | rval = qla2x00_get_fw_version(vha, |
933 | &ha->fw_major_version, | 933 | &ha->fw_major_version, |
934 | &ha->fw_minor_version, | 934 | &ha->fw_minor_version, |
935 | &ha->fw_subminor_version, | 935 | &ha->fw_subminor_version, |
936 | &ha->fw_attributes, &ha->fw_memory_size, | 936 | &ha->fw_attributes, &ha->fw_memory_size, |
937 | ha->mpi_version, &ha->mpi_capabilities, | 937 | ha->mpi_version, &ha->mpi_capabilities, |
938 | ha->phy_version); | 938 | ha->phy_version); |
939 | if (rval != QLA_SUCCESS) | ||
940 | goto failed; | ||
941 | |||
939 | ha->flags.npiv_supported = 0; | 942 | ha->flags.npiv_supported = 0; |
940 | if (IS_QLA2XXX_MIDTYPE(ha) && | 943 | if (IS_QLA2XXX_MIDTYPE(ha) && |
941 | (ha->fw_attributes & BIT_2)) { | 944 | (ha->fw_attributes & BIT_2)) { |
@@ -987,7 +990,7 @@ qla2x00_setup_chip(scsi_qla_host_t *vha) | |||
987 | ha->fw_subminor_version); | 990 | ha->fw_subminor_version); |
988 | } | 991 | } |
989 | } | 992 | } |
990 | 993 | failed: | |
991 | if (rval) { | 994 | if (rval) { |
992 | DEBUG2_3(printk("scsi(%ld): Setup chip **** FAILED ****.\n", | 995 | DEBUG2_3(printk("scsi(%ld): Setup chip **** FAILED ****.\n", |
993 | vha->host_no)); | 996 | vha->host_no)); |