Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
[linux-2.6-block.git] / drivers / scsi / qla2xxx / qla_os.c
index 337162ac3a7716c46bc18774410f7a1796e2b33a..726ad4cbf4a64f10f094e53fa1a6d991d7907145 100644 (file)
@@ -1119,9 +1119,11 @@ qla2x00_wait_for_sess_deletion(scsi_qla_host_t *vha)
 
        qla2x00_mark_all_devices_lost(vha, 0);
 
-       for (i = 0; i < 10; i++)
-               wait_event_timeout(vha->fcport_waitQ, test_fcport_count(vha),
-                   HZ);
+       for (i = 0; i < 10; i++) {
+               if (wait_event_timeout(vha->fcport_waitQ,
+                   test_fcport_count(vha), HZ) > 0)
+                       break;
+       }
 
        flush_workqueue(vha->hw->wq);
 }