Re: [PATCH 11/15] qla2xxx: Fix flash update in 28XX adapters on big endian machines

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

 




> On Dec 1, 2020, at 2:27 AM, Nilesh Javali <njavali@xxxxxxxxxxx> wrote:
> 
> From: Arun Easi <aeasi@xxxxxxxxxxx>
> 
> Flash update failed due to missing endian conversion in FLT region access
> as well as in checksum computation.
> 
> Signed-off-by: Arun Easi <aeasi@xxxxxxxxxxx>
> Signed-off-by: Nilesh Javali <njavali@xxxxxxxxxxx>
> ---
> drivers/scsi/qla2xxx/qla_sup.c | 10 +++++-----
> 1 file changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/scsi/qla2xxx/qla_sup.c b/drivers/scsi/qla2xxx/qla_sup.c
> index 0f92e9a044dc..f771fabcba59 100644
> --- a/drivers/scsi/qla2xxx/qla_sup.c
> +++ b/drivers/scsi/qla2xxx/qla_sup.c
> @@ -2634,14 +2634,14 @@ qla28xx_extract_sfub_and_verify(struct scsi_qla_host *vha, uint32_t *buf,
> 	    sizeof(struct secure_flash_update_block));
> 
> 	for (i = 0; i < (sizeof(struct secure_flash_update_block) >> 2); i++)
> -		check_sum += p[i];
> +		check_sum += le32_to_cpu(p[i]);
> 
> 	check_sum = (~check_sum) + 1;
> 
> -	if (check_sum != p[i]) {
> +	if (check_sum != le32_to_cpu(p[i])) {
> 		ql_log(ql_log_warn, vha, 0x7097,
> 		    "SFUB checksum failed, 0x%x, 0x%x\n",
> -		    check_sum, p[i]);
> +		    check_sum, le32_to_cpu(p[i]));
> 		return QLA_COMMAND_ERROR;
> 	}
> 
> @@ -2721,7 +2721,7 @@ qla28xx_write_flash_data(scsi_qla_host_t *vha, uint32_t *dwptr, uint32_t faddr,
> 	if (ha->flags.secure_adapter && region.attribute) {
> 
> 		ql_log(ql_log_warn + ql_dbg_verbose, vha, 0xffff,
> -		    "Region %x is secure\n", region.code);
> +		    "Region %x is secure\n", le16_to_cpu(region.code));
> 
> 		switch (le16_to_cpu(region.code)) {
> 		case FLT_REG_FW:
> @@ -2775,7 +2775,7 @@ qla28xx_write_flash_data(scsi_qla_host_t *vha, uint32_t *dwptr, uint32_t faddr,
> 		default:
> 			ql_log(ql_log_warn + ql_dbg_verbose, vha,
> 			    0xffff, "Secure region %x not supported\n",
> -			    region.code);
> +			    le16_to_cpu(region.code));
> 			rval = QLA_COMMAND_ERROR;
> 			goto done;
> 		}
> -- 
> 2.19.0.rc0
> 

Looks Good.

Reviewed-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>

--
Himanshu Madhani	 Oracle Linux Engineering





[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