do not reconnect if reconnect is already defered

If the amount of reconnects is limited with iscsi_set_reconnect_max_retries()
it might happen that iscsi_reconnect is called while there is already a deferred
reconnect.

Signed-off-by: Peter Lieven <pl@kamp.de>
This commit is contained in:
Peter Lieven
2013-03-11 08:44:11 +01:00
parent 0bc415761a
commit 327b51ed5b

View File

@@ -219,6 +219,12 @@ int iscsi_reconnect(struct iscsi_context *old_iscsi)
{
struct iscsi_context *iscsi = old_iscsi;
/* if there is already a deferred reconnect do not try again */
if (iscsi->reconnect_deferred) {
ISCSI_LOG(iscsi, 2, "reconnect initiated, but reconnect is already deferred");
return -1;
}
ISCSI_LOG(iscsi, 2, "reconnect initiated");
/* This is mainly for tests, where we do not want to automatically