message/mptscsih: replace schedule_timeout() with msleep()
PATCH 12/14 message/mptscsih: replace schedule_timeout() with msleep()
I would appreciate any comments from the janitor@sternweltens list. This is one (of many) cases where I made a decision about replacing
set_current_state(TASK_INTERRUPTIBLE);schedule_timeout(some_time);
with
msleep(jiffies_to_msecs(some_time));
msleep() is not exactly the same as the previous code, but I only did this replacement where I thought long delays were *desired*. If this is not the case here, then just disregard this patch.
Thanks,
Nish
Description: Replace schedule_timeout() with msleep() to guarantee the task delays for the desired time.
Signed-off-by Maximilian Attems <[email protected]>
---
linux-2.6.9-rc1-bk7-max/drivers/message/fusion/mptscsih.c | 9 +++------ 1 files changed, 3 insertions(+), 6 deletions(-)
drivers/message/fusion/mptscsih.c renamed from drivers/message/fusion/mptscsih.c~msleep-drivers_message_fusion_mptscsih +3 -6
@@ -2623,8 +2623,7 @@ mptscsih_tm_pending_wait(MPT_SCSI_HOST *break ; }spin_unlock_irqrestore (&hd->ioc->FreeQlock, flags); -set_current_state (TASK_INTERRUPTIBLE ); -schedule_timeout (HZ /4 ); +msleep (250 ); }while (--loop_count);return status;
@@ -4788,8 +4787,7 @@ mptscsih_domainValidation(void *arg) }spin_unlock_irqrestore (&dvtaskQ_lock, flags); -set_current_state (TASK_INTERRUPTIBLE ); -schedule_timeout (HZ /4 ); +msleep (250 );/* DV only to SCSI adapters */ if ((int )ioc->chip_type <= (int )FC929 )
@@ -4837,8 +4835,7 @@ mptscsih_domainValidation(void *arg) hd->ioc->spi_data.dvStatus[id] |=MPT_SCSICFG_DV_PENDING ; hd->ioc->spi_data.dvStatus[id] &= ~MPT_SCSICFG_NEED_DV ; -set_current_state (TASK_INTERRUPTIBLE ); -schedule_timeout (HZ /4 ); +msleep (250 );/* If hidden phys disk, block IO's to all * raid volumes
_