diff options
Diffstat (limited to 'drivers/infiniband/ulp/srp/ib_srp.c')
-rw-r--r-- | drivers/infiniband/ulp/srp/ib_srp.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/infiniband/ulp/srp/ib_srp.c b/drivers/infiniband/ulp/srp/ib_srp.c index 1b5b0c730054..922d845f76b0 100644 --- a/drivers/infiniband/ulp/srp/ib_srp.c +++ b/drivers/infiniband/ulp/srp/ib_srp.c | |||
@@ -638,9 +638,9 @@ static void srp_reset_req(struct srp_target_port *target, struct srp_request *re | |||
638 | struct scsi_cmnd *scmnd = srp_claim_req(target, req, NULL); | 638 | struct scsi_cmnd *scmnd = srp_claim_req(target, req, NULL); |
639 | 639 | ||
640 | if (scmnd) { | 640 | if (scmnd) { |
641 | srp_free_req(target, req, scmnd, 0); | ||
641 | scmnd->result = DID_RESET << 16; | 642 | scmnd->result = DID_RESET << 16; |
642 | scmnd->scsi_done(scmnd); | 643 | scmnd->scsi_done(scmnd); |
643 | srp_free_req(target, req, scmnd, 0); | ||
644 | } | 644 | } |
645 | } | 645 | } |
646 | 646 | ||
@@ -1687,6 +1687,7 @@ static int srp_abort(struct scsi_cmnd *scmnd) | |||
1687 | SRP_TSK_ABORT_TASK); | 1687 | SRP_TSK_ABORT_TASK); |
1688 | srp_free_req(target, req, scmnd, 0); | 1688 | srp_free_req(target, req, scmnd, 0); |
1689 | scmnd->result = DID_ABORT << 16; | 1689 | scmnd->result = DID_ABORT << 16; |
1690 | scmnd->scsi_done(scmnd); | ||
1690 | 1691 | ||
1691 | return SUCCESS; | 1692 | return SUCCESS; |
1692 | } | 1693 | } |