Commit d7f7c6eb authored by Daniel Wagner's avatar Daniel Wagner Committed by Christoph Hellwig
Browse files

nvmet-fcloop: add missing fcloop_callback_host_done



Add the missing fcloop_call_host_done calls so that the caller
frees resources when something goes wrong.

Signed-off-by: default avatarDaniel Wagner <wagi@kernel.org>
Reviewed-by: default avatarHannes Reinecke <hare@kernel.org>
Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
parent 596cba55
Loading
Loading
Loading
Loading
+9 −3
Original line number Diff line number Diff line
@@ -1002,9 +1002,10 @@ fcloop_fcp_abort(struct nvme_fc_local_port *localport,
	}
	spin_unlock(&inireq->inilock);

	if (!tfcp_req)
	if (!tfcp_req) {
		/* abort has already been called */
		return;
		goto out_host_done;
	}

	/* break initiator/target relationship for io */
	spin_lock_irqsave(&tfcp_req->reqlock, flags);
@@ -1019,7 +1020,7 @@ fcloop_fcp_abort(struct nvme_fc_local_port *localport,
	default:
		spin_unlock_irqrestore(&tfcp_req->reqlock, flags);
		WARN_ON(1);
		return;
		goto out_host_done;
	}
	spin_unlock_irqrestore(&tfcp_req->reqlock, flags);

@@ -1033,6 +1034,11 @@ fcloop_fcp_abort(struct nvme_fc_local_port *localport,
		 */
		fcloop_tfcp_req_put(tfcp_req);
	}

	return;

out_host_done:
	fcloop_call_host_done(fcpreq, tfcp_req, -ECANCELED);
}

static void