The test tool is simplistic and uses the synchronous API. In this API we will only poll() the socket and process events during the lifetime of any iscsi_*_sync() calls. A problem with this approach arises with multipath tests. When iscsi-test-cu is used with multiple devices we will first open a session for each multipath leg, but then as most tests are only using the first device we end up with creating secondary sessions we don't do any iscsi_*_sync() calls on for very long times. If a target is set up to send NOPs on these secondary paths it will not get any responses and eventually tear down the connection. To avoid this, try to make sure we service any secondary paths we have created by calling iscsi_service(POLLIN|POLLOUT) every few seconds to make sure we do service and respond to any NOPs. Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
77 KiB
77 KiB