FC_STATE_CHANGE
vha->task_daemon_flags |= FC_STATE_CHANGE;
ql_port_state(ha, FC_STATE_OFFLINE, FC_STATE_CHANGE);
ql_awaken_task_daemon(ha, NULL, FC_STATE_CHANGE, 0);
if (!(ha->task_daemon_flags & FC_STATE_CHANGE)) {
ha->task_daemon_flags |= FC_STATE_CHANGE;
ql_awaken_task_daemon(ha, NULL, FC_STATE_CHANGE, 0);
if (vha->task_daemon_flags & FC_STATE_CHANGE &&
vha->task_daemon_flags &= ~FC_STATE_CHANGE;
ha->task_daemon_flags &= ~(FC_STATE_CHANGE | MARKER_NEEDED |
ql_port_state(ha, FC_STATE_OFFLINE, FC_STATE_CHANGE);
ql_port_state(ha, FC_STATE_OFFLINE, FC_STATE_CHANGE);
ha->task_daemon_flags &= ~(FC_STATE_CHANGE | STATE_ONLINE);
FC_STATE_CHANGE | COMMAND_WAIT_NEEDED | LOOP_DOWN);
FC_STATE_CHANGE | COMMAND_WAIT_NEEDED | LOOP_DOWN);
ql_port_state(ha, FC_STATE_OFFLINE, FC_STATE_CHANGE |
FC_STATE_CHANGE | COMMAND_WAIT_NEEDED | LOOP_DOWN);