From: Nishanth Aravamudan Subject: [KJ] [PATCH] cdrom/sjcd: remove sleep_on() usage 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 --- sjcd.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletion(-) Index: quilt/drivers/cdrom/sjcd.c =================================================================== --- quilt.orig/drivers/cdrom/sjcd.c +++ quilt/drivers/cdrom/sjcd.c @@ -70,6 +70,7 @@ #include #include #include +#include #include #include @@ -407,9 +408,12 @@ static void sjcd_status_timer(void) */ static int sjcd_wait_for_status(void) { + DEFINE_WAIT(wait); sjcd_status_timeout = SJCD_WAIT_FOR_STATUS_TIMEOUT; SJCD_SET_TIMER(sjcd_status_timer, 1); - sleep_on(&sjcd_waitq); + prepare_to_wait(&sjcd_waitq, &wait, TASK_UNINTERRUPTIBLE); + schedule(); + finish_wait(&sjcd_waitq, &wait); #if defined( SJCD_DIAGNOSTIC ) || defined ( SJCD_TRACE ) if (sjcd_status_timeout <= 0) printk("SJCD: Error Wait For Status.\n");