Directly use wait-queues instead of the deprecated sleep_on(). This required adding a local waitqueue. Patch is compile-tested. Signed-off-by: Nishanth Aravamudan Signed-off-by: Domen Puncer --- kj-domen/drivers/cdrom/mcd.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletion(-) diff -puN drivers/cdrom/mcd.c~sleep_on-drivers_cdrom_mcd drivers/cdrom/mcd.c --- kj/drivers/cdrom/mcd.c~sleep_on-drivers_cdrom_mcd 2005-03-02 10:44:46.000000000 +0100 +++ kj-domen/drivers/cdrom/mcd.c 2005-03-02 10:44:46.000000000 +0100 @@ -95,6 +95,7 @@ #include #include #include +#include /* #define REALLY_SLOW_IO */ #include @@ -1273,11 +1274,14 @@ static void mcdStatTimer(unsigned long d static int getMcdStatus(int timeout) { int st; + DEFINE_WAIT(wait); + prepare_to_wait(&mcd_waitq, &wait, TASK_UNINTERRUPTIBLE); McdTimeout = timeout; mcd_timer.function = mcdStatTimer; mod_timer(&mcd_timer, jiffies + 1); - sleep_on(&mcd_waitq); + schedule(); + finish_wait(&mcd_waitq, &wait); if (McdTimeout <= 0) return -1; _