[SPARC]: sbus/aurora: replace schedule_timeout() with msleep_interruptible()
Use msleep_interruptible() instead of schedule_timeout() to guarantee the task delays as expected. Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Domen Puncer <domen@coderock.org>
This commit is contained in:
parent
4564203d76
commit
70c83375bb
|
@ -1515,8 +1515,7 @@ static void aurora_close(struct tty_struct * tty, struct file * filp)
|
||||||
*/
|
*/
|
||||||
timeout = jiffies+HZ;
|
timeout = jiffies+HZ;
|
||||||
while(port->SRER & SRER_TXEMPTY) {
|
while(port->SRER & SRER_TXEMPTY) {
|
||||||
current->state = TASK_INTERRUPTIBLE;
|
msleep_interruptible(jiffies_to_msecs(port->timeout));
|
||||||
schedule_timeout(port->timeout);
|
|
||||||
if (time_after(jiffies, timeout))
|
if (time_after(jiffies, timeout))
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -1533,8 +1532,7 @@ static void aurora_close(struct tty_struct * tty, struct file * filp)
|
||||||
port->tty = 0;
|
port->tty = 0;
|
||||||
if (port->blocked_open) {
|
if (port->blocked_open) {
|
||||||
if (port->close_delay) {
|
if (port->close_delay) {
|
||||||
current->state = TASK_INTERRUPTIBLE;
|
msleep_interruptible(jiffies_to_msecs(port->close_delay));
|
||||||
schedule_timeout(port->close_delay);
|
|
||||||
}
|
}
|
||||||
wake_up_interruptible(&port->open_wait);
|
wake_up_interruptible(&port->open_wait);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user