Message ID | 20180426055055.GA9742@mwanda |
---|---|
State | Not Applicable, archived |
Headers | show |
Series | serial/aspeed-vuart: fix a couple mod_timer() calls | expand |
Hi Dan, > The "unthrottle_timeout" is HZ/10 but mod_timer() takes a the actual > jiffie where you want it to timeout, not an offset. Ah, of course. Acked-by: Jeremy Kerr <jk@ozlabs.org> Cheers, Jeremy
diff --git a/drivers/tty/serial/8250/8250_aspeed_vuart.c b/drivers/tty/serial/8250/8250_aspeed_vuart.c index 023db3266757..435bec40dee6 100644 --- a/drivers/tty/serial/8250/8250_aspeed_vuart.c +++ b/drivers/tty/serial/8250/8250_aspeed_vuart.c @@ -226,7 +226,8 @@ static void aspeed_vuart_unthrottle_exp(struct timer_list *timer) struct uart_8250_port *up = vuart->port; if (!tty_buffer_space_avail(&up->port.state->port)) { - mod_timer(&vuart->unthrottle_timer, unthrottle_timeout); + mod_timer(&vuart->unthrottle_timer, + jiffies + unthrottle_timeout); return; } @@ -271,7 +272,7 @@ static int aspeed_vuart_handle_irq(struct uart_port *port) if (!timer_pending(&vuart->unthrottle_timer)) { vuart->port = up; mod_timer(&vuart->unthrottle_timer, - unthrottle_timeout); + jiffies + unthrottle_timeout); } } else {
The "unthrottle_timeout" is HZ/10 but mod_timer() takes a the actual jiffie where you want it to timeout, not an offset. Fixes: 5909c0bf9c7a ("serial/aspeed-vuart: Implement quick throttle mechanism") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>