diff options
author | Mike Christie <michaelc@cs.wisc.edu> | 2007-12-13 13:43:30 -0500 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2008-01-11 19:28:35 -0500 |
commit | f6d5180c78780d63b0577edeb3ce41eeb3e93eea (patch) | |
tree | 95eb44fb84dd7659f816c5f1166c1ae7e2301f5f /drivers/scsi/scsi_transport_iscsi.c | |
parent | 2697478903d0ad8bdbf868b1346ae4b891662bb1 (diff) |
[SCSI] libiscsi: fix nop handling
During root boot and shutdown the target could send us nops.
At this time iscsid cannot be running, so the target will drop
the session and the boot or shutdown will hang.
To handle this and allow us to better control when to check the network
this patch moves the nop handling to the kernel.
Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/scsi/scsi_transport_iscsi.c')
-rw-r--r-- | drivers/scsi/scsi_transport_iscsi.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/scsi/scsi_transport_iscsi.c b/drivers/scsi/scsi_transport_iscsi.c index b82139dc4830..36aa50e45ec7 100644 --- a/drivers/scsi/scsi_transport_iscsi.c +++ b/drivers/scsi/scsi_transport_iscsi.c | |||
@@ -1202,6 +1202,8 @@ iscsi_conn_attr(port, ISCSI_PARAM_CONN_PORT); | |||
1202 | iscsi_conn_attr(exp_statsn, ISCSI_PARAM_EXP_STATSN); | 1202 | iscsi_conn_attr(exp_statsn, ISCSI_PARAM_EXP_STATSN); |
1203 | iscsi_conn_attr(persistent_address, ISCSI_PARAM_PERSISTENT_ADDRESS); | 1203 | iscsi_conn_attr(persistent_address, ISCSI_PARAM_PERSISTENT_ADDRESS); |
1204 | iscsi_conn_attr(address, ISCSI_PARAM_CONN_ADDRESS); | 1204 | iscsi_conn_attr(address, ISCSI_PARAM_CONN_ADDRESS); |
1205 | iscsi_conn_attr(ping_tmo, ISCSI_PARAM_PING_TMO); | ||
1206 | iscsi_conn_attr(recv_tmo, ISCSI_PARAM_RECV_TMO); | ||
1205 | 1207 | ||
1206 | #define iscsi_cdev_to_session(_cdev) \ | 1208 | #define iscsi_cdev_to_session(_cdev) \ |
1207 | iscsi_dev_to_session(_cdev->dev) | 1209 | iscsi_dev_to_session(_cdev->dev) |
@@ -1437,6 +1439,8 @@ iscsi_register_transport(struct iscsi_transport *tt) | |||
1437 | SETUP_CONN_RD_ATTR(exp_statsn, ISCSI_EXP_STATSN); | 1439 | SETUP_CONN_RD_ATTR(exp_statsn, ISCSI_EXP_STATSN); |
1438 | SETUP_CONN_RD_ATTR(persistent_address, ISCSI_PERSISTENT_ADDRESS); | 1440 | SETUP_CONN_RD_ATTR(persistent_address, ISCSI_PERSISTENT_ADDRESS); |
1439 | SETUP_CONN_RD_ATTR(persistent_port, ISCSI_PERSISTENT_PORT); | 1441 | SETUP_CONN_RD_ATTR(persistent_port, ISCSI_PERSISTENT_PORT); |
1442 | SETUP_CONN_RD_ATTR(ping_tmo, ISCSI_PING_TMO); | ||
1443 | SETUP_CONN_RD_ATTR(recv_tmo, ISCSI_RECV_TMO); | ||
1440 | 1444 | ||
1441 | BUG_ON(count > ISCSI_CONN_ATTRS); | 1445 | BUG_ON(count > ISCSI_CONN_ATTRS); |
1442 | priv->conn_attrs[count] = NULL; | 1446 | priv->conn_attrs[count] = NULL; |