diff options
-rw-r--r-- | drivers/scsi/qla2xxx/qla_mid.c | 1 | ||||
-rw-r--r-- | drivers/scsi/qla2xxx/qla_os.c | 13 |
2 files changed, 3 insertions, 11 deletions
diff --git a/drivers/scsi/qla2xxx/qla_mid.c b/drivers/scsi/qla2xxx/qla_mid.c index fa35339b7b69..e7565765fa14 100644 --- a/drivers/scsi/qla2xxx/qla_mid.c +++ b/drivers/scsi/qla2xxx/qla_mid.c | |||
@@ -105,7 +105,6 @@ qla2x00_mark_vp_devices_dead(scsi_qla_host_t *vha) | |||
105 | "loop_id=0x%04x :%x\n", | 105 | "loop_id=0x%04x :%x\n", |
106 | vha->host_no, fcport->loop_id, fcport->vp_idx)); | 106 | vha->host_no, fcport->loop_id, fcport->vp_idx)); |
107 | 107 | ||
108 | atomic_set(&fcport->state, FCS_DEVICE_DEAD); | ||
109 | qla2x00_mark_device_lost(vha, fcport, 0, 0); | 108 | qla2x00_mark_device_lost(vha, fcport, 0, 0); |
110 | } | 109 | } |
111 | } | 110 | } |
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c index 9c3a57fa5060..3f391698e1ce 100644 --- a/drivers/scsi/qla2xxx/qla_os.c +++ b/drivers/scsi/qla2xxx/qla_os.c | |||
@@ -1931,7 +1931,7 @@ qla2x00_mark_all_devices_lost(scsi_qla_host_t *ha, int defer) | |||
1931 | scsi_qla_host_t *pha = to_qla_parent(ha); | 1931 | scsi_qla_host_t *pha = to_qla_parent(ha); |
1932 | 1932 | ||
1933 | list_for_each_entry(fcport, &pha->fcports, list) { | 1933 | list_for_each_entry(fcport, &pha->fcports, list) { |
1934 | if (ha->vp_idx != 0 && ha->vp_idx != fcport->vp_idx) | 1934 | if (ha->vp_idx != fcport->vp_idx) |
1935 | continue; | 1935 | continue; |
1936 | /* | 1936 | /* |
1937 | * No point in marking the device as lost, if the device is | 1937 | * No point in marking the device as lost, if the device is |
@@ -1939,17 +1939,10 @@ qla2x00_mark_all_devices_lost(scsi_qla_host_t *ha, int defer) | |||
1939 | */ | 1939 | */ |
1940 | if (atomic_read(&fcport->state) == FCS_DEVICE_DEAD) | 1940 | if (atomic_read(&fcport->state) == FCS_DEVICE_DEAD) |
1941 | continue; | 1941 | continue; |
1942 | if (atomic_read(&fcport->state) == FCS_ONLINE) { | 1942 | if (atomic_read(&fcport->state) == FCS_ONLINE) |
1943 | if (defer) | 1943 | qla2x00_schedule_rport_del(ha, fcport, defer); |
1944 | qla2x00_schedule_rport_del(ha, fcport, defer); | ||
1945 | else if (ha->vp_idx == fcport->vp_idx) | ||
1946 | qla2x00_schedule_rport_del(ha, fcport, defer); | ||
1947 | } | ||
1948 | atomic_set(&fcport->state, FCS_DEVICE_LOST); | 1944 | atomic_set(&fcport->state, FCS_DEVICE_LOST); |
1949 | } | 1945 | } |
1950 | |||
1951 | if (defer) | ||
1952 | qla2xxx_wake_dpc(ha); | ||
1953 | } | 1946 | } |
1954 | 1947 | ||
1955 | /* | 1948 | /* |