IB/srp: Avoid having aborted requests hang
authorBart Van Assche <bvanassche@acm.org>
Fri, 24 Aug 2012 10:29:11 +0000 (10:29 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 7 Oct 2012 15:27:27 +0000 (08:27 -0700)
commit d8536670916a685df116b5c2cb256573fd25e4e3 upstream.

We need to call scsi_done() for commands after we abort them.

Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Acked-by: David Dillow <dillowda@ornl.gov>
Signed-off-by: Roland Dreier <roland@purestorage.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/infiniband/ulp/srp/ib_srp.c

index 7c62e7437536b21590f0f50a2ea0c6a5711ff8a6..aa5eafa194abb54d1f1b726eb8fd9f3260c3a3d7 100644 (file)
@@ -1669,6 +1669,7 @@ static int srp_abort(struct scsi_cmnd *scmnd)
                          SRP_TSK_ABORT_TASK);
        srp_free_req(target, req, scmnd, 0);
        scmnd->result = DID_ABORT << 16;
+       scmnd->scsi_done(scmnd);
 
        return SUCCESS;
 }