On Jul 11, 2010, at 4:09 PM, Mike Christie wrote:
On 07/06/2010 12:18 AM, Vikas Chaudhary wrote:
Added support to modify session->recovery_tmo from sysfs
Signed-off-by: Vikas Chaudhary<vikas.chaudhary@xxxxxxxxxx>
Signed-off-by: Ravi Anand<ravi.anand@xxxxxxxxxx>
---
drivers/scsi/scsi_transport_iscsi.c | 37 ++++++++++++++++++++++++
++++++----
1 files changed, 32 insertions(+), 5 deletions(-)
diff --git a/drivers/scsi/scsi_transport_iscsi.c b/drivers/scsi/
scsi_transport_iscsi.c
index b9aec30..fe8704c 100644
--- a/drivers/scsi/scsi_transport_iscsi.c
+++ b/drivers/scsi/scsi_transport_iscsi.c
@@ -1786,11 +1786,33 @@ show_priv_session_##field(struct device
*dev, \
return sprintf(buf, format"\n", session->field); \
}
-#define iscsi_priv_session_attr(field, format) \
+#define iscsi_priv_session_attr_store(field) \
+static ssize_t \
+store_priv_session_##field(struct device *dev, \
+ struct device_attribute *attr, \
+ const char *buf, size_t count) \
+{ \
+ int val; \
+ char *cp; \
+ struct iscsi_cls_session *session = \
+ iscsi_dev_to_session(dev->parent); \
+ if ((session->state == ISCSI_SESSION_FREE) || \
+ (session->state == ISCSI_SESSION_FAILED)) \
+ return -EBUSY; \
+ val = simple_strtoul(buf,&cp, 0); \
+ if ((*cp&& (*cp != '\n')) || (val< 0)) \
-1 is a ok value. It is like setting fast io fail to -"off".
if we set "session->recovery_tmo" to off (-1) iscsi_transport never
make call to
"session_recovery_timedout" in that case iscsi_transport never set
session state to
"ISCSI_SESSION_FREE" and qla4xxx driver will never set DDB state to
"DDB_STATE_DEAD" so in this case driver will never do failover to
another path.
Do we need to add some thing more for failover to work in this case?
Please correct me if I am wrong.
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html