Re: [PATCH] scsi: bnx2fc: fix incorrect cast to u64 on shift operation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




-----Original Message-----
From: <linux-scsi-owner@xxxxxxxxxxxxxxx> on behalf of Colin King
<colin.king@xxxxxxxxxxxxx>
Date: Saturday, 4 May 2019 at 10:18 PM
To: "QLogic-Storage-Upstream@xxxxxxxxxx"
<QLogic-Storage-Upstream@xxxxxxxxxx>, "James E . J . Bottomley"
<jejb@xxxxxxxxxxxxx>, "Martin K . Petersen" <martin.petersen@xxxxxxxxxx>,
"linux-scsi@xxxxxxxxxxxxxxx" <linux-scsi@xxxxxxxxxxxxxxx>
Cc: "kernel-janitors@xxxxxxxxxxxxxxx" <kernel-janitors@xxxxxxxxxxxxxxx>,
"linux-kernel@xxxxxxxxxxxxxxx" <linux-kernel@xxxxxxxxxxxxxxx>
Subject: [PATCH] scsi: bnx2fc: fix incorrect cast to u64 on shift operation

>From: Colin Ian King <colin.king@xxxxxxxxxxxxx>
>
>Currently an int is being shifted and the result is being cast to a u64
>which leads to undefined behaviour if the shift is more than 31 bits. Fix
>this by casting the integer value 1 to u64 before the shift operation.
>
>Addresses-Coverity: ("Bad shift operation")
>Fixes: 7b594769120b ("[SCSI] bnx2fc: Handle REC_TOV error code from
>firmware")
>Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
>---
> drivers/scsi/bnx2fc/bnx2fc_hwi.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
>diff --git a/drivers/scsi/bnx2fc/bnx2fc_hwi.c
>b/drivers/scsi/bnx2fc/bnx2fc_hwi.c
>index 19734ec7f42e..747f019fb393 100644
>--- a/drivers/scsi/bnx2fc/bnx2fc_hwi.c
>+++ b/drivers/scsi/bnx2fc/bnx2fc_hwi.c
>@@ -830,7 +830,7 @@ static void bnx2fc_process_unsol_compl(struct
>bnx2fc_rport *tgt, u16 wqe)
> 			((u64)err_entry->data.err_warn_bitmap_hi << 32) |
> 			(u64)err_entry->data.err_warn_bitmap_lo;
> 		for (i = 0; i < BNX2FC_NUM_ERR_BITS; i++) {
>-			if (err_warn_bit_map & (u64) (1 << i)) {
>+			if (err_warn_bit_map & ((u64)1 << i)) {
> 				err_warn = i;
> 				break;
> 			}
>-- 
>2.20.1

Thanks for the Patch.

Acked-by: Saurav Kashyap <skashyap@xxxxxxxxxxx>

>





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux