Any comments would be, as always, appreciated. -Nish Description: Use msleep_interruptible() instead of schedule_timeout() to guarantee the task delays as expected. Signed-off-by: Nishanth Aravamudan Signed-off-by: Domen Puncer --- kj-domen/drivers/cdrom/sonycd535.c | 3 +-- 1 files changed, 1 insertion(+), 2 deletions(-) diff -puN drivers/cdrom/sonycd535.c~msleep_interruptible-drivers_cdrom_sonycd535_2 drivers/cdrom/sonycd535.c --- kj/drivers/cdrom/sonycd535.c~msleep_interruptible-drivers_cdrom_sonycd535_2 2004-12-25 01:35:16.000000000 +0100 +++ kj-domen/drivers/cdrom/sonycd535.c 2004-12-25 01:35:16.000000000 +0100 @@ -897,9 +897,8 @@ do_cdu535_request(request_queue_t * q) } if (readStatus == BAD_STATUS) { /* Sleep for a while, then retry */ - set_current_state(TASK_INTERRUPTIBLE); spin_unlock_irq(&sonycd535_lock); - schedule_timeout(RETRY_FOR_BAD_STATUS*HZ/10); + msleep_interruptible(RETRY_FOR_BAD_STATUS*100); spin_lock_irq(&sonycd535_lock); } #if DEBUG > 0 _