aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/bnx2i/bnx2i_hwi.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/bnx2i/bnx2i_hwi.c')
-rw-r--r--drivers/scsi/bnx2i/bnx2i_hwi.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/scsi/bnx2i/bnx2i_hwi.c b/drivers/scsi/bnx2i/bnx2i_hwi.c
index 1ad0b8225560..f9d6f4129093 100644
--- a/drivers/scsi/bnx2i/bnx2i_hwi.c
+++ b/drivers/scsi/bnx2i/bnx2i_hwi.c
@@ -1312,14 +1312,18 @@ int bnx2i_send_fw_iscsi_init_msg(struct bnx2i_hba *hba)
1312 ISCSI_KCQE_COMPLETION_STATUS_PROTOCOL_ERR_EXP_DATASN) | 1312 ISCSI_KCQE_COMPLETION_STATUS_PROTOCOL_ERR_EXP_DATASN) |
1313 /* EMC */ 1313 /* EMC */
1314 (1ULL << ISCSI_KCQE_COMPLETION_STATUS_PROTOCOL_ERR_LUN)); 1314 (1ULL << ISCSI_KCQE_COMPLETION_STATUS_PROTOCOL_ERR_LUN));
1315 if (error_mask1) 1315 if (error_mask1) {
1316 iscsi_init2.error_bit_map[0] = error_mask1; 1316 iscsi_init2.error_bit_map[0] = error_mask1;
1317 else 1317 mask64 &= (u32)(~mask64);
1318 mask64 |= error_mask1;
1319 } else
1318 iscsi_init2.error_bit_map[0] = (u32) mask64; 1320 iscsi_init2.error_bit_map[0] = (u32) mask64;
1319 1321
1320 if (error_mask2) 1322 if (error_mask2) {
1321 iscsi_init2.error_bit_map[1] = error_mask2; 1323 iscsi_init2.error_bit_map[1] = error_mask2;
1322 else 1324 mask64 &= 0xffffffff;
1325 mask64 |= ((u64)error_mask2 << 32);
1326 } else
1323 iscsi_init2.error_bit_map[1] = (u32) (mask64 >> 32); 1327 iscsi_init2.error_bit_map[1] = (u32) (mask64 >> 32);
1324 1328
1325 iscsi_error_mask = mask64; 1329 iscsi_error_mask = mask64;