Skip to contentSkip to conversation

message/mptscsih: replace schedule_timeout() with msleep()

PATCH New [email protected] 1 participant 1 message Sep 2, 2004 LSI Logic MPT fusion drivers (FC/SAS/SPI)

lore
Share & tools
lore
#0 lore raw

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.

---

 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
diff -puN drivers/message/fusion/mptscsih.c~msleep-drivers_message_fusion_mptscsih drivers/message/fusion/mptscsih.c
@@ -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

_