diff options
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_mid.c')
-rw-r--r-- | drivers/scsi/qla2xxx/qla_mid.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/scsi/qla2xxx/qla_mid.c b/drivers/scsi/qla2xxx/qla_mid.c index e7565765fa14..9a850a24b38a 100644 --- a/drivers/scsi/qla2xxx/qla_mid.c +++ b/drivers/scsi/qla2xxx/qla_mid.c | |||
@@ -277,7 +277,8 @@ qla2x00_do_dpc_vp(scsi_qla_host_t *vha) | |||
277 | clear_bit(RESET_ACTIVE, &vha->dpc_flags); | 277 | clear_bit(RESET_ACTIVE, &vha->dpc_flags); |
278 | } | 278 | } |
279 | 279 | ||
280 | if (test_and_clear_bit(LOOP_RESYNC_NEEDED, &vha->dpc_flags)) { | 280 | if (atomic_read(&vha->vp_state) == VP_ACTIVE && |
281 | test_and_clear_bit(LOOP_RESYNC_NEEDED, &vha->dpc_flags)) { | ||
281 | if (!(test_and_set_bit(LOOP_RESYNC_ACTIVE, &vha->dpc_flags))) { | 282 | if (!(test_and_set_bit(LOOP_RESYNC_ACTIVE, &vha->dpc_flags))) { |
282 | qla2x00_loop_resync(vha); | 283 | qla2x00_loop_resync(vha); |
283 | clear_bit(LOOP_RESYNC_ACTIVE, &vha->dpc_flags); | 284 | clear_bit(LOOP_RESYNC_ACTIVE, &vha->dpc_flags); |