diff mbox

bnx2fc: bnx2fc_eh_abort(): fix wrong return code.

Message ID 1454339325-12579-1-git-send-email-mlombard@redhat.com (mailing list archive)
State Accepted, archived
Headers show

Commit Message

Maurizio Lombardi Feb. 1, 2016, 3:08 p.m. UTC
If the link is not ready, the bnx2fc_eh_abort() function
should return FAILED.

Signed-off-by: Maurizio Lombardi <mlombard@redhat.com>
---
 drivers/scsi/bnx2fc/bnx2fc_io.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

Comments

Ewan Milne Feb. 1, 2016, 3:32 p.m. UTC | #1
On Mon, 2016-02-01 at 16:08 +0100, Maurizio Lombardi wrote:
> If the link is not ready, the bnx2fc_eh_abort() function
> should return FAILED.
> 
> Signed-off-by: Maurizio Lombardi <mlombard@redhat.com>
> ---
>  drivers/scsi/bnx2fc/bnx2fc_io.c | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/scsi/bnx2fc/bnx2fc_io.c b/drivers/scsi/bnx2fc/bnx2fc_io.c
> index 0002caf..2230dab 100644
> --- a/drivers/scsi/bnx2fc/bnx2fc_io.c
> +++ b/drivers/scsi/bnx2fc/bnx2fc_io.c
> @@ -1104,8 +1104,7 @@ int bnx2fc_eh_abort(struct scsi_cmnd *sc_cmd)
>  	struct bnx2fc_cmd *io_req;
>  	struct fc_lport *lport;
>  	struct bnx2fc_rport *tgt;
> -	int rc = FAILED;
> -
> +	int rc;
>  
>  	rc = fc_block_scsi_eh(sc_cmd);
>  	if (rc)
> @@ -1114,7 +1113,7 @@ int bnx2fc_eh_abort(struct scsi_cmnd *sc_cmd)
>  	lport = shost_priv(sc_cmd->device->host);
>  	if ((lport->state != LPORT_ST_READY) || !(lport->link_up)) {
>  		printk(KERN_ERR PFX "eh_abort: link not ready\n");
> -		return rc;
> +		return FAILED;
>  	}
>  
>  	tgt = (struct bnx2fc_rport *)&rp[1];

Yes, because setting the initial setting of rc = FAILED is overwritten
by the result of fc_block_scsi_eh().

Reviewed-by: Ewan D. Milne <emilne@redhat.com>


--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Chad Dupuis Feb. 1, 2016, 4:02 p.m. UTC | #2
On Mon, 1 Feb 2016, Maurizio Lombardi wrote:

> If the link is not ready, the bnx2fc_eh_abort() function
> should return FAILED.
>
> Signed-off-by: Maurizio Lombardi <mlombard@redhat.com>
> ---
> drivers/scsi/bnx2fc/bnx2fc_io.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/scsi/bnx2fc/bnx2fc_io.c b/drivers/scsi/bnx2fc/bnx2fc_io.c
> index 0002caf..2230dab 100644
> --- a/drivers/scsi/bnx2fc/bnx2fc_io.c
> +++ b/drivers/scsi/bnx2fc/bnx2fc_io.c
> @@ -1104,8 +1104,7 @@ int bnx2fc_eh_abort(struct scsi_cmnd *sc_cmd)
> 	struct bnx2fc_cmd *io_req;
> 	struct fc_lport *lport;
> 	struct bnx2fc_rport *tgt;
> -	int rc = FAILED;
> -
> +	int rc;
>
> 	rc = fc_block_scsi_eh(sc_cmd);
> 	if (rc)
> @@ -1114,7 +1113,7 @@ int bnx2fc_eh_abort(struct scsi_cmnd *sc_cmd)
> 	lport = shost_priv(sc_cmd->device->host);
> 	if ((lport->state != LPORT_ST_READY) || !(lport->link_up)) {
> 		printk(KERN_ERR PFX "eh_abort: link not ready\n");
> -		return rc;
> +		return FAILED;
> 	}
>
> 	tgt = (struct bnx2fc_rport *)&rp[1];
>

Yes, nice catch.

Acked-by: Chad Dupuis <chad.dupuis@qlogic.com>
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Martin K. Petersen Feb. 2, 2016, 1:50 a.m. UTC | #3
>>>>> "Maurizio" == Maurizio Lombardi <mlombard@redhat.com> writes:

Maurizio> If the link is not ready, the bnx2fc_eh_abort() function
Maurizio> should return FAILED.

Applied to 4.6/scsi-queue.
diff mbox

Patch

diff --git a/drivers/scsi/bnx2fc/bnx2fc_io.c b/drivers/scsi/bnx2fc/bnx2fc_io.c
index 0002caf..2230dab 100644
--- a/drivers/scsi/bnx2fc/bnx2fc_io.c
+++ b/drivers/scsi/bnx2fc/bnx2fc_io.c
@@ -1104,8 +1104,7 @@  int bnx2fc_eh_abort(struct scsi_cmnd *sc_cmd)
 	struct bnx2fc_cmd *io_req;
 	struct fc_lport *lport;
 	struct bnx2fc_rport *tgt;
-	int rc = FAILED;
-
+	int rc;
 
 	rc = fc_block_scsi_eh(sc_cmd);
 	if (rc)
@@ -1114,7 +1113,7 @@  int bnx2fc_eh_abort(struct scsi_cmnd *sc_cmd)
 	lport = shost_priv(sc_cmd->device->host);
 	if ((lport->state != LPORT_ST_READY) || !(lport->link_up)) {
 		printk(KERN_ERR PFX "eh_abort: link not ready\n");
-		return rc;
+		return FAILED;
 	}
 
 	tgt = (struct bnx2fc_rport *)&rp[1];