mcd: replace schedule_timeout() with msleep()
PATCH 2/14 mcd: 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: Uses msleep() instead of schedule_timeout() to guarantee the task delays at least the desired time amount.
Signed-off-by Nishanth Aravamudan <[email protected]>
Signed-off-by Maximilian Attems <[email protected]>
---
linux-2.6.9-rc1-bk7-max/drivers/cdrom/mcd.c | 7 +++---- 1 files changed, 3 insertions(+), 4 deletions(-)
drivers/cdrom/mcd.c renamed from drivers/cdrom/mcd.c~msleep-drivers_cdrom_mcd +3 -4
@@ -1021,10 +1021,9 @@ static int mcd_open(struct cdrom_device_ st =statusCmd ();/* check drive status */ if (st ==-1 ) goto err_out;/* drive doesn't respond */ -if ((st &MST_READY ) ==0 ) {/* no disk? wait a sec... */ - current->state =TASK_INTERRUPTIBLE ; -schedule_timeout (HZ ); - } +if ((st &MST_READY ) ==0 )/* no disk? wait a sec... */ +msleep (1000 ); + }while (((st &MST_READY ) ==0 ) && count++ <MCD_RETRY_ATTEMPTS );if (updateToc () <0 )
_