[PATCH] drivers/char: fix-up schedule_timeout() usage
Use schedule_timeout_interruptible() instead of set_current_state()/schedule_timeout() to reduce kernel size. Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
2ddee1b7a7
commit
da4cd8dfe1
6 changed files with 17 additions and 36 deletions
|
|
@ -1058,8 +1058,7 @@ static void mxser_close(struct tty_struct *tty, struct file *filp)
|
|||
*/
|
||||
timeout = jiffies + HZ;
|
||||
while (!(inb(info->base + UART_LSR) & UART_LSR_TEMT)) {
|
||||
set_current_state(TASK_INTERRUPTIBLE);
|
||||
schedule_timeout(5);
|
||||
schedule_timeout_interruptible(5);
|
||||
if (time_after(jiffies, timeout))
|
||||
break;
|
||||
}
|
||||
|
|
@ -1080,10 +1079,8 @@ static void mxser_close(struct tty_struct *tty, struct file *filp)
|
|||
info->event = 0;
|
||||
info->tty = NULL;
|
||||
if (info->blocked_open) {
|
||||
if (info->close_delay) {
|
||||
set_current_state(TASK_INTERRUPTIBLE);
|
||||
schedule_timeout(info->close_delay);
|
||||
}
|
||||
if (info->close_delay)
|
||||
schedule_timeout_interruptible(info->close_delay);
|
||||
wake_up_interruptible(&info->open_wait);
|
||||
}
|
||||
|
||||
|
|
@ -1801,8 +1798,7 @@ static void mxser_wait_until_sent(struct tty_struct *tty, int timeout)
|
|||
#ifdef SERIAL_DEBUG_RS_WAIT_UNTIL_SENT
|
||||
printk("lsr = %d (jiff=%lu)...", lsr, jiffies);
|
||||
#endif
|
||||
set_current_state(TASK_INTERRUPTIBLE);
|
||||
schedule_timeout(char_time);
|
||||
schedule_timeout_interruptible(char_time);
|
||||
if (signal_pending(current))
|
||||
break;
|
||||
if (timeout && time_after(jiffies, orig_jiffies + timeout))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue