Any comments would be appreciated.
Description: Use msleep_interruptible() instead of schedule_timeout() to
guarantee the task delays as expected.
Signed-off-by: Nishanth Aravamudan <[email protected]>
Signed-off-by: Maximilian Attems <[email protected]>
---
linux-2.6.9-rc2-bk7-max/drivers/char/mxser.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff -puN drivers/char/mxser.c~msleep_interruptible-drivers_char_mxser drivers/char/mxser.c
--- linux-2.6.9-rc2-bk7/drivers/char/mxser.c~msleep_interruptible-drivers_char_mxser 2004-09-21 21:08:14.000000000 +0200
+++ linux-2.6.9-rc2-bk7-max/drivers/char/mxser.c 2004-09-21 21:08:14.000000000 +0200
@@ -59,6 +59,7 @@
#include <linux/smp_lock.h>
#include <linux/pci.h>
#include <linux/init.h>
+#include <linux/delay.h>
#include <asm/system.h>
#include <asm/io.h>
@@ -820,8 +821,7 @@ static void mxser_close(struct tty_struc
info->tty = NULL;
if (info->blocked_open) {
if (info->close_delay) {
- set_current_state(TASK_INTERRUPTIBLE);
- schedule_timeout(info->close_delay);
+ msleep_interruptible(jiffies_to_msecs(info->close_delay));
}
wake_up_interruptible(&info->open_wait);
}
_