diff mbox series

scsi: qla2xxx: fix mailbox direction flags in qla2xxx_get_adapter_id()

Message ID 20211108183012.13895-1-emilne@redhat.com (mailing list archive)
State Accepted
Headers show
Series scsi: qla2xxx: fix mailbox direction flags in qla2xxx_get_adapter_id() | expand

Commit Message

Ewan Milne Nov. 8, 2021, 6:30 p.m. UTC
The SCM changes set the flags in mcp->out_mb instead of mcp->in_mb
so the data was not actually being read into the mcp->mb[] array from
the adapter.

Fixes: 9f2475fe7406 ("scsi: qla2xxx: SAN congestion management implementation")
Cc: stable@vger.kernel.org
Signed-off-by: Ewan D. Milne <emilne@redhat.com>
---
 drivers/scsi/qla2xxx/qla_mbx.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

Comments

Himanshu Madhani Nov. 8, 2021, 11:11 p.m. UTC | #1
On 11/8/21 12:30, Ewan D. Milne wrote:
> The SCM changes set the flags in mcp->out_mb instead of mcp->in_mb
> so the data was not actually being read into the mcp->mb[] array from
> the adapter.
> 
> Fixes: 9f2475fe7406 ("scsi: qla2xxx: SAN congestion management implementation")
> Cc: stable@vger.kernel.org
> Signed-off-by: Ewan D. Milne <emilne@redhat.com>
> ---
>   drivers/scsi/qla2xxx/qla_mbx.c | 6 ++----
>   1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/scsi/qla2xxx/qla_mbx.c b/drivers/scsi/qla2xxx/qla_mbx.c
> index 7811c4952035..a6debeea3079 100644
> --- a/drivers/scsi/qla2xxx/qla_mbx.c
> +++ b/drivers/scsi/qla2xxx/qla_mbx.c
> @@ -1695,10 +1695,8 @@ qla2x00_get_adapter_id(scsi_qla_host_t *vha, uint16_t *id, uint8_t *al_pa,
>   		mcp->in_mb |= MBX_13|MBX_12|MBX_11|MBX_10;
>   	if (IS_FWI2_CAPABLE(vha->hw))
>   		mcp->in_mb |= MBX_19|MBX_18|MBX_17|MBX_16;
> -	if (IS_QLA27XX(vha->hw) || IS_QLA28XX(vha->hw)) {
> -		mcp->in_mb |= MBX_15;
> -		mcp->out_mb |= MBX_7|MBX_21|MBX_22|MBX_23;
> -	}
> +	if (IS_QLA27XX(vha->hw) || IS_QLA28XX(vha->hw))
> +		mcp->in_mb |= MBX_15|MBX_21|MBX_22|MBX_23;
>   
>   	mcp->tov = MBX_TOV_SECONDS;
>   	mcp->flags = 0;
> 

Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
Arun Easi Nov. 9, 2021, 12:49 a.m. UTC | #2
Looks good. Thanks Ewan.

Reviewed-by: Arun Easi <aeasi@marvell.com>

Regards,
-Arun

On Mon, 8 Nov 2021, 10:30am, Ewan D. Milne wrote:

>
> The SCM changes set the flags in mcp->out_mb instead of mcp->in_mb
> so the data was not actually being read into the mcp->mb[] array from
> the adapter.
> 
> Fixes: 9f2475fe7406 ("scsi: qla2xxx: SAN congestion management implementation")
> Cc: stable@vger.kernel.org
> Signed-off-by: Ewan D. Milne <emilne@redhat.com>
> ---
>  drivers/scsi/qla2xxx/qla_mbx.c | 6 ++----
>  1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/scsi/qla2xxx/qla_mbx.c b/drivers/scsi/qla2xxx/qla_mbx.c
> index 7811c4952035..a6debeea3079 100644
> --- a/drivers/scsi/qla2xxx/qla_mbx.c
> +++ b/drivers/scsi/qla2xxx/qla_mbx.c
> @@ -1695,10 +1695,8 @@ qla2x00_get_adapter_id(scsi_qla_host_t *vha, uint16_t *id, uint8_t *al_pa,
>  		mcp->in_mb |= MBX_13|MBX_12|MBX_11|MBX_10;
>  	if (IS_FWI2_CAPABLE(vha->hw))
>  		mcp->in_mb |= MBX_19|MBX_18|MBX_17|MBX_16;
> -	if (IS_QLA27XX(vha->hw) || IS_QLA28XX(vha->hw)) {
> -		mcp->in_mb |= MBX_15;
> -		mcp->out_mb |= MBX_7|MBX_21|MBX_22|MBX_23;
> -	}
> +	if (IS_QLA27XX(vha->hw) || IS_QLA28XX(vha->hw))
> +		mcp->in_mb |= MBX_15|MBX_21|MBX_22|MBX_23;
>  
>  	mcp->tov = MBX_TOV_SECONDS;
>  	mcp->flags = 0;
>
Martin K. Petersen Nov. 9, 2021, 4:16 a.m. UTC | #3
Ewan,

> The SCM changes set the flags in mcp->out_mb instead of mcp->in_mb so
> the data was not actually being read into the mcp->mb[] array from the
> adapter.

Applied to 5.16/scsi-staging, thanks!
Martin K. Petersen Nov. 19, 2021, 4:16 a.m. UTC | #4
On Mon, 8 Nov 2021 13:30:12 -0500, Ewan D. Milne wrote:

> The SCM changes set the flags in mcp->out_mb instead of mcp->in_mb
> so the data was not actually being read into the mcp->mb[] array from
> the adapter.
> 
> 

Applied to 5.16/scsi-fixes, thanks!

[1/1] scsi: qla2xxx: fix mailbox direction flags in qla2xxx_get_adapter_id()
      https://git.kernel.org/mkp/scsi/c/392006871bb2
diff mbox series

Patch

diff --git a/drivers/scsi/qla2xxx/qla_mbx.c b/drivers/scsi/qla2xxx/qla_mbx.c
index 7811c4952035..a6debeea3079 100644
--- a/drivers/scsi/qla2xxx/qla_mbx.c
+++ b/drivers/scsi/qla2xxx/qla_mbx.c
@@ -1695,10 +1695,8 @@  qla2x00_get_adapter_id(scsi_qla_host_t *vha, uint16_t *id, uint8_t *al_pa,
 		mcp->in_mb |= MBX_13|MBX_12|MBX_11|MBX_10;
 	if (IS_FWI2_CAPABLE(vha->hw))
 		mcp->in_mb |= MBX_19|MBX_18|MBX_17|MBX_16;
-	if (IS_QLA27XX(vha->hw) || IS_QLA28XX(vha->hw)) {
-		mcp->in_mb |= MBX_15;
-		mcp->out_mb |= MBX_7|MBX_21|MBX_22|MBX_23;
-	}
+	if (IS_QLA27XX(vha->hw) || IS_QLA28XX(vha->hw))
+		mcp->in_mb |= MBX_15|MBX_21|MBX_22|MBX_23;
 
 	mcp->tov = MBX_TOV_SECONDS;
 	mcp->flags = 0;