MFC r288067: Log iSCSI session reinstatements.

False session reinstatements can be result of misconfiguration, when
several initiators use the same initiator name and ISID.
This commit is contained in:
mav 2015-10-05 10:50:35 +00:00
parent cb104e59be
commit dbea20fc6b

View File

@ -1565,6 +1565,16 @@ restart:
if (cs2 != cs && cs2->cs_tasks_aborted == false &&
cs->cs_target == cs2->cs_target &&
strcmp(cs->cs_initiator_id, cs2->cs_initiator_id) == 0) {
if (strcmp(cs->cs_initiator_addr,
cs2->cs_initiator_addr) != 0) {
CFISCSI_SESSION_WARN(cs2,
"session reinstatement from "
"different address %s",
cs->cs_initiator_addr);
} else {
CFISCSI_SESSION_DEBUG(cs2,
"session reinstatement");
}
cfiscsi_session_terminate(cs2);
mtx_unlock(&softc->lock);
pause("cfiscsi_reinstate", 1);