sonycd535: replace schedule_timeout()
PATCH 1/1 sonycd535: replace schedule_timeout()
I would appreciate any comments from the janitors 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
Applys-to: 2.6.7
Description: Uses msleep() instead of schedule_timeout() to guarantee the task delays at least the desired time amount.
drivers/cdrom/sonycd535.c +1 -2
@@ -1478,8 +1478,7 @@ static int __init sony535_init(void)/* look for the CD-ROM, follows the procedure in the DOS driver */ inb (select_unit_reg);/* wait for 40 18 Hz ticks (reverse-engineered from DOS driver) */ -set_current_state (TASK_INTERRUPTIBLE ); -schedule_timeout ((HZ +17 )*40 /18 ); +msleep (2223 );inb (result_reg);outb (0 , read_status_reg);/* does a reset? */
_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors
PATCH 1/1 sonycd535: replace schedule_timeout()
Please find below the corrected patch, as the previous one would not compile.
I would appreciate any comments from the janitors 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
Applys-to: 2.6.7
Description: Uses msleep() instead of schedule_timeout() to guarantee the task delays at least the desired time amount.
drivers/cdrom/sonycd535.c +3 -3
@@ -129,7 +129,8 @@#include <linux/mm.h> #include <linux/slab.h> #include <linux/init.h> - +#include <linux/delay.h> +#define REALLY_SLOW_IO #include <asm/system.h> #include <asm/io.h>
@@ -1478,8 +1479,7 @@ static int __init sony535_init(void)/* look for the CD-ROM, follows the procedure in the DOS driver */ inb (select_unit_reg);/* wait for 40 18 Hz ticks (reverse-engineered from DOS driver) */ -set_current_state (TASK_INTERRUPTIBLE ); -schedule_timeout ((HZ +17 )*40 /18 ); +msleep (2223 );inb (result_reg);outb (0 , read_status_reg);/* does a reset? */
_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors
PATCH 1/1 sonycd535: replace schedule_timeout() with
In reply to Nishanth AravamudanThis is one of 10 patches which have either not been pushed to mainline (2.6.9-rc1-bk7) or have not been included in any of the recent kjt's.
Applys-to: 2.6.9-rc1-bk7
Description: Uses msleep() instead of schedule_timeout() to guarantee the task delays at least the desired time amount.
drivers/cdrom/sonycd535.c +2 -2
@@ -129,6 +129,7 @@#include <linux/mm.h> #include <linux/slab.h> #include <linux/init.h> +#include <linux/delay.h> #define REALLY_SLOW_IO #include <asm/system.h>
@@ -1478,8 +1479,7 @@ static int __init sony535_init(void)/* look for the CD-ROM, follows the procedure in the DOS driver */ inb (select_unit_reg);/* wait for 40 18 Hz ticks (reverse-engineered from DOS driver) */ -set_current_state (TASK_INTERRUPTIBLE ); -schedule_timeout ((HZ +17 )*40 /18 ); +msleep (2223 );inb (result_reg);outb (0 , read_status_reg);/* does a reset? */
_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors