From e349fa35363fa96f11addecb67e0f8a6edfb0e3a Mon Sep 17 00:00:00 2001 From: Vikas Chaudhary Date: Sat, 10 Jul 2010 14:48:36 +0530 Subject: [SCSI] qla4xxx: set driver ddb state correctly in process_ddb_changed If fw ddb state is ACTIVE mark driver ddb stat as ONLINE and unblock iscsi session. Signed-off-by: Vikas Chaudhary Signed-off-by: Ravi Anand Reviewed-by: Mike Christie Signed-off-by: James Bottomley --- drivers/scsi/qla4xxx/ql4_init.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/scsi/qla4xxx/ql4_init.c b/drivers/scsi/qla4xxx/ql4_init.c index 5510df8a7fa..8947743e54d 100644 --- a/drivers/scsi/qla4xxx/ql4_init.c +++ b/drivers/scsi/qla4xxx/ql4_init.c @@ -1487,7 +1487,10 @@ int qla4xxx_process_ddb_changed(struct scsi_qla_host *ha, uint32_t fw_ddb_index, ddb_entry->fw_ddb_device_state, state, fw_ddb_index)); if (old_fw_ddb_device_state == state && state == DDB_DS_SESSION_ACTIVE) { - /* Do nothing, state not changed. */ + if (atomic_read(&ddb_entry->state) != DDB_STATE_ONLINE) { + atomic_set(&ddb_entry->state, DDB_STATE_ONLINE); + iscsi_unblock_session(ddb_entry->sess); + } return QLA_SUCCESS; } -- cgit v1.2.3-70-g09d2