7/34: block/ps2esdi: replace sleep_on() with
Subsystems (2)
PATCH 1/1 7/34: block/ps2esdi: replace sleep_on() with
Hi,
Please consider applying.
Description: Use wait_event() instead of the deprecated sleep_on(). The latter two replacements treat the current if-conditional as a while-conditional. I am not sure if this will result in the desired behavior. The first change required using wait-queue code directly with a local wait-queue, as the sleep is not conditional currently.
Signed-off-by Nishanth Aravamudan <[email protected]>
drivers/block/ps2esdi.c +7 -5
@@ -43,6 +43,7 @@#include <linux/init.h> #include <linux/ioport.h> #include <linux/module.h> +#include <linux/delay.h> #include <asm/system.h> #include <asm/io.h>
@@ -292,6 +293,7 @@ static int __init ps2esdi_geninit(void)we will set the INIT_FLAG to a non-zero value. */ +DEFINE_WAIT (wait);int slot =0 , i, reset_start, reset_end;u_char status;unsigned short adapterID;
@@ -373,11 +375,13 @@ static int __init ps2esdi_geninit(void) reset_status =0 ; reset_start = jiffies;while (!reset_status) { +prepare_to_wait (&ps2esdi_int, &wait,TASK_UNINTERRUPTIBLE );init_timer (&esdi_timer); esdi_timer.expires = jiffies +HZ ; esdi_timer.data =0 ;add_timer (&esdi_timer); -sleep_on (&ps2esdi_int); +schedule (); +finish_wait (&ps2esdi_int, &wait); } reset_end = jiffies;LITE_OFF ;
@@ -461,8 +465,7 @@ static void __init ps2esdi_get_device_cf cmd_blk[1 ] =0 ; no_int_yet = TRUE;ps2esdi_out_cmd_blk (cmd_blk); -if (no_int_yet) -sleep_on (&ps2esdi_int); +wait_event (ps2esdi_int, !no_int_yet);if (ps2esdi_drives >1 ) {printk ("%s: Drive 1\n" ,DEVICE_NAME );/*BA */
@@ -470,8 +473,7 @@ static void __init ps2esdi_get_device_cf cmd_blk[1 ] =0 ; no_int_yet = TRUE;ps2esdi_out_cmd_blk (cmd_blk); -if (no_int_yet) -sleep_on (&ps2esdi_int); +wait_event (ps2esdi_int, !no_int_yet); }/* if second physical drive is present */ return ; }
_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors