]> git.hungrycats.org Git - linux/commitdiff
[PATCH] scsi/mesh: replace schedule_timeout() with msleep()
authorMaximilian Attems <janitor@sternwelten.at>
Fri, 10 Sep 2004 09:24:54 +0000 (05:24 -0400)
committerDave Jones <davej@delerium.codemonkey.org.uk>
Fri, 10 Sep 2004 09:24:54 +0000 (05:24 -0400)
Description: Use msleep() instead of schedule_timeout() to
guarantee the task delays for the desired time.

Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
drivers/scsi/mesh.c

index 1700d4e6ce58e12c7c5af3a1084c3b26b2bca545..721f40dddab44cc598202e7bdc2486b60d828c59 100644 (file)
@@ -388,8 +388,7 @@ static void mesh_init(struct mesh_state *ms)
                mesh_flush_io(mr);
 
                /* Wait for bus to come back */
-               current->state = TASK_UNINTERRUPTIBLE;
-               schedule_timeout((init_reset_delay * HZ) / 1000);
+               msleep(init_reset_delay);
        }
        
        /* Reconfigure controller */
@@ -1749,12 +1748,10 @@ static void set_mesh_power(struct mesh_state *ms, int state)
                return;
        if (state) {
                pmac_call_feature(PMAC_FTR_MESH_ENABLE, macio_get_of_node(ms->mdev), 0, 1);
-               set_current_state(TASK_UNINTERRUPTIBLE);
-               schedule_timeout(HZ/5);
+               msleep(200);
        } else {
                pmac_call_feature(PMAC_FTR_MESH_ENABLE, macio_get_of_node(ms->mdev), 0, 0);
-               set_current_state(TASK_UNINTERRUPTIBLE);
-               schedule_timeout(HZ/100);
+               msleep(10);
        }
 }                      
 
@@ -1772,8 +1769,7 @@ static int mesh_suspend(struct macio_dev *mdev, u32 state)
        spin_lock_irqsave(ms->host->host_lock, flags);
        while(ms->phase != idle) {
                spin_unlock_irqrestore(ms->host->host_lock, flags);
-               current->state = TASK_UNINTERRUPTIBLE;
-               schedule_timeout(HZ/100);
+               msleep(10);
                spin_lock_irqsave(ms->host->host_lock, flags);
        }
        ms->phase = sleeping;