Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 452b505c authored by Christof Schmitt's avatar Christof Schmitt Committed by James Bottomley
Browse files

[SCSI] zfcp: Remove two FIXME comments



On a link down, the adapter reopen is not strictly necessary, but it
helps flushing pending requests as quickly as possible. Add a comment
mentioning this.

qdio returning a problem on the response queue is an unlikely event.
The recovery mentioned in the comment might resolve it, so implement
it. This also has the advantage that it creates an entry in the
recovery trace to see if and when this is occurring.

Reviewed-by: default avatarSwen Schillig <swen@vnet.ibm.com>
Signed-off-by: default avatarChristof Schmitt <christof.schmitt@de.ibm.com>
Signed-off-by: default avatarJames Bottomley <James.Bottomley@suse.de>
parent b6bd2fb9
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -394,7 +394,7 @@ static void zfcp_fsf_protstatus_eval(struct zfcp_fsf_req *req)
	case FSF_PROT_LINK_DOWN:
	case FSF_PROT_LINK_DOWN:
		zfcp_fsf_link_down_info_eval(req, "fspse_5",
		zfcp_fsf_link_down_info_eval(req, "fspse_5",
					     &psq->link_down_info);
					     &psq->link_down_info);
		/* FIXME: reopening adapter now? better wait for link up */
		/* go through reopen to flush pending requests */
		zfcp_erp_adapter_reopen(adapter, 0, "fspse_6", req);
		zfcp_erp_adapter_reopen(adapter, 0, "fspse_6", req);
		break;
		break;
	case FSF_PROT_REEST_QUEUE:
	case FSF_PROT_REEST_QUEUE:
+1 −1
Original line number Original line Diff line number Diff line
@@ -106,7 +106,7 @@ static void zfcp_qdio_resp_put_back(struct zfcp_qdio *qdio, int processed)


	if (unlikely(retval)) {
	if (unlikely(retval)) {
		atomic_set(&queue->count, count);
		atomic_set(&queue->count, count);
		/* FIXME: Recover this with an adapter reopen? */
		zfcp_erp_adapter_reopen(qdio->adapter, 0, "qdrpb_1", NULL);
	} else {
	} else {
		queue->first += count;
		queue->first += count;
		queue->first %= QDIO_MAX_BUFFERS_PER_Q;
		queue->first %= QDIO_MAX_BUFFERS_PER_Q;