Re: [PATCH 1/1] serial: 8250, disable "too much work" messages

From: Takashi Iwai
Date: Tue Apr 01 2014 - 08:43:50 EST


At Tue, 1 Apr 2014 13:37:00 +0200,
Jiri Slaby wrote:
>
> The 8250 driver now reports many of these:
> serial8250: too much work for irq4
> These messages turned out to be common these days with a use of
> virtualization. I tried to increase the limit of processed characters
> in commit e7328ae1848966181a7ac47e8ae6cddbd2cf55f3 (serial: 8250,
> increase PASS_LIMIT) in 2011. It was raised from 256 to 512, but it is
> still not enough, apparently.

Actually, it looks like a side-effect of the reduction of tasklet. In
the earlier code, tty_wakeup() was called via tasklet, and this made
the loop in the interrupt handler finishing once. Now it's called
directly, thus the irq handler may pick up more than before.

> So disable the warning unless somebody turns on DEBUG (or
> DYNAMIC_DEBUG _and_ the message).
>
> Signed-off-by: Jiri Slaby <jslaby@xxxxxxx>
> Reported-by: Martin Pluskal <mpluskal@xxxxxxxx>
> Reported-by: Takashi Iwai <tiwai@xxxxxxxx>
> References: https://bugzilla.novell.com/show_bug.cgi?id=868394


In case it's still worth:
Tested-by: Takashi Iwai <tiwai@xxxxxxx>

thanks,

Takashi


> ---
> drivers/tty/serial/8250/8250_core.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/tty/serial/8250/8250_core.c b/drivers/tty/serial/8250/8250_core.c
> index 81f909c2101f..139ab1997e06 100644
> --- a/drivers/tty/serial/8250/8250_core.c
> +++ b/drivers/tty/serial/8250/8250_core.c
> @@ -1601,8 +1601,7 @@ static irqreturn_t serial8250_interrupt(int irq, void *dev_id)
> l = l->next;
>
> if (l == i->head && pass_counter++ > PASS_LIMIT) {
> - /* If we hit this, we're dead. */
> - printk_ratelimited(KERN_ERR
> + pr_debug_ratelimited(
> "serial8250: too much work for irq%d\n", irq);
> break;
> }
> --
> 1.9.1
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/