Any comments would be appreciated. This is a re-push of a patch I
submitted 20 July which hasn't been merged as of
2.6.9-rc1-mm5/2.6.9-rc2.
Description: msleep_interruptible() is used instead of pg_sleep()
to guarantee the task delays as expected. The defintion of pg_sleep()
is also modified to use set_current_state() instead of direct
assignment.
Signed-off-by: Nishanth Aravamudan <[email protected]>
Signed-off-by: Maximilian Attems <[email protected]>
---
linux-2.6.9-rc2-bk7-max/drivers/block/paride/pg.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff -puN drivers/block/paride/pg.c~msleep_interruptible-drivers_block_pg drivers/block/paride/pg.c
--- linux-2.6.9-rc2-bk7/drivers/block/paride/pg.c~msleep_interruptible-drivers_block_pg 2004-09-21 21:07:54.000000000 +0200
+++ linux-2.6.9-rc2-bk7-max/drivers/block/paride/pg.c 2004-09-21 21:07:54.000000000 +0200
@@ -295,7 +295,7 @@ static inline u8 DRIVE(struct pg *dev)
static void pg_sleep(int cs)
{
- current->state = TASK_INTERRUPTIBLE;
+ set_current_state(TASK_INTERRUPTIBLE);
schedule_timeout(cs);
}
@@ -409,7 +409,7 @@ static int pg_reset(struct pg *dev)
write_reg(dev, 6, DRIVE(dev));
write_reg(dev, 7, 8);
- pg_sleep(20 * HZ / 1000);
+ msleep_interruptible(20);
k = 0;
while ((k++ < PG_RESET_TMO) && (status_reg(dev) & STAT_BUSY))
_