Skip to content

Commit

Permalink
ocs_fc: Ignore flogi failure when the discovery is already done.
Browse files Browse the repository at this point in the history
Summary:
Some targets are not responding to the FLOGI in point-to-point topology,
If the pt2pt discovery is done, Ignore the FLOGI failure.

MFC after: 3 days

Differential Revision: https://reviews.freebsd.org/D34422

(cherry picked from commit 79c56c9)
  • Loading branch information
Ram Kishore Vegesna authored and Ram Kishore Vegesna committed Mar 7, 2022
1 parent 7584921 commit 927f212
Showing 1 changed file with 14 additions and 2 deletions.
16 changes: 14 additions & 2 deletions sys/dev/ocs_fc/ocs_fabric.c
Original file line number Diff line number Diff line change
Expand Up @@ -228,10 +228,22 @@ __ocs_fabric_flogi_wait_rsp(ocs_sm_ctx_t *ctx, ocs_sm_event_t evt, void *arg)
if (node_check_els_req(ctx, evt, arg, FC_ELS_CMD_FLOGI, __ocs_fabric_common, __func__)) {
return NULL;
}
node_printf(node, "FLOGI failed evt=%s, shutting down sport [%s]\n", ocs_sm_event_name(evt),
sport->display_name);
ocs_assert(node->els_req_cnt, NULL);
node->els_req_cnt--;
if (node->sport->domain->attached) {
node_printf(node, "FLOGI failed, Domain already attached\n");
if (node->sport->p2p_winner) {
node_printf(node, "p2p winner, domain already attached\n");
ocs_node_post_event(node, OCS_EVT_DOMAIN_ATTACH_OK, NULL);
} else {
node_printf(node, "peer p2p winner, shutdown node\n");
node->shutdown_reason = OCS_NODE_SHUTDOWN_DEFAULT;
ocs_fabric_initiate_shutdown(node);
}
break;
}
node_printf(node, "FLOGI failed evt=%s, shutting down sport [%s]\n", ocs_sm_event_name(evt),
sport->display_name);
ocs_sm_post_event(&sport->sm, OCS_EVT_SHUTDOWN, NULL);
break;
}
Expand Down

0 comments on commit 927f212

Please sign in to comment.