summaryrefslogtreecommitdiffstats
path: root/sys/cam
diff options
context:
space:
mode:
authormav <mav@FreeBSD.org>2015-09-21 13:25:29 +0000
committermav <mav@FreeBSD.org>2015-09-21 13:25:29 +0000
commit6fb47d3576cdfcba905b5e4424324ac5cc2d4524 (patch)
tree3e5c1d68cf01d705b9275d64b71cb7c0071a1048 /sys/cam
parent34885c76098231052ff6cffc69c2a86cad253338 (diff)
downloadFreeBSD-src-6fb47d3576cdfcba905b5e4424324ac5cc2d4524.zip
FreeBSD-src-6fb47d3576cdfcba905b5e4424324ac5cc2d4524.tar.gz
Log iSCSI session reinstatements.
False session reinstatements can be result of misconfiguration, when several initiators use the same initiator name and ISID.
Diffstat (limited to 'sys/cam')
-rw-r--r--sys/cam/ctl/ctl_frontend_iscsi.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/sys/cam/ctl/ctl_frontend_iscsi.c b/sys/cam/ctl/ctl_frontend_iscsi.c
index 79a1fb5..87f5787 100644
--- a/sys/cam/ctl/ctl_frontend_iscsi.c
+++ b/sys/cam/ctl/ctl_frontend_iscsi.c
@@ -1611,6 +1611,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);
OpenPOWER on IntegriCloud