From: Tomas Henzl Date: Tue, 3 Jul 2012 08:08:41 +0000 (+0200) Subject: [SCSI] bnx2i: fix the bit manipulation when setting the error mask X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=d4a0d607e22013446a63e024a80e9106b3e30407;p=linux-beck.git [SCSI] bnx2i: fix the bit manipulation when setting the error mask The intention in bnx2i_send_fw_iscsi_init_msg was to zero out only the lower 32bits, but instead the whole mask64 is zeroed. This patch fixes it. Signed-off-by: Tomas Henzl Acked-by: Eddie Wai Signed-off-by: James Bottomley --- diff --git a/drivers/scsi/bnx2i/bnx2i_hwi.c b/drivers/scsi/bnx2i/bnx2i_hwi.c index 91eec60252ee..a28b03e5a5f6 100644 --- a/drivers/scsi/bnx2i/bnx2i_hwi.c +++ b/drivers/scsi/bnx2i/bnx2i_hwi.c @@ -1317,7 +1317,7 @@ int bnx2i_send_fw_iscsi_init_msg(struct bnx2i_hba *hba) (1ULL << ISCSI_KCQE_COMPLETION_STATUS_PROTOCOL_ERR_LUN)); if (error_mask1) { iscsi_init2.error_bit_map[0] = error_mask1; - mask64 &= (u32)(~mask64); + mask64 ^= (u32)(mask64); mask64 |= error_mask1; } else iscsi_init2.error_bit_map[0] = (u32) mask64;