From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751463AbaDAMnn (ORCPT ); Tue, 1 Apr 2014 08:43:43 -0400 Received: from cantor2.suse.de ([195.135.220.15]:41514 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751162AbaDAMnk (ORCPT ); Tue, 1 Apr 2014 08:43:40 -0400 Date: Tue, 01 Apr 2014 14:43:39 +0200 Message-ID: From: Takashi Iwai To: "Jiri Slaby" Cc: , , Subject: Re: [PATCH 1/1] serial: 8250, disable "too much work" messages In-Reply-To: <1396352220-5031-1-git-send-email-jslaby@suse.cz> References: <1396352220-5031-1-git-send-email-jslaby@suse.cz> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI/1.14.6 (Maruoka) FLIM/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL/10.8 Emacs/24.3 (x86_64-suse-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 > Reported-by: Martin Pluskal > Reported-by: Takashi Iwai > References: https://bugzilla.novell.com/show_bug.cgi?id=868394 In case it's still worth: Tested-by: Takashi Iwai 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 > >