The initiator occasionally gets into a state where it has an active connection but no I/O completes. It appears to be stuck in enumeration waiting on a test unity ready command to complete. From the "::threadlist -v" output:
ffffff0009326c80 fffffffffbc287b0 0 0 60 ffffff02078ce438
PC: _resume_from_idle+0xf1 TASKQ: iscsi_login_taskq_1_297
stack pointer for thread ffffff0009326c80: ffffff0009326a40
[ ffffff0009326a40 _resume_from_idle+0xf1() ]
swtch+0x17f()
cv_wait+0x61()
iscsi_handle_passthru+0x20e()
iscsi_sess_testunitready+0x62()
iscsi_sess_enumeration+0x1f()
taskq_thread+0x1a7()
thread_start+8()
I can reproduce this fairly easily using a heavy load test that eventually causes a target reset but the system test team for iscsit has also seen this issue when doing performance testing on iscsit. The performance workload is heavy but not excessively so, and the hung command always coincides with the initiator sending a target reset along with a reconnection (hard to tell which order from the target side).
This issue is inhibiting the testing of iscsit.