Re: Scheduling while atomic in tty code with cdc-acm driver, kernel2.6.29.1

From: Alan Cox
Date: Tue Apr 14 2009 - 02:11:21 EST


On Tue, 14 Apr 2009 01:50:10 +0200
Oliver Neukum <oliver@xxxxxxxxxx> wrote:

> Am Dienstag 14 April 2009 01:36:33 schrieb Chuck Ebbert:
> > BUG: sleeping function called from invalid context at kernel/mutex.c:88
> > in_atomic(): 1, irqs_disabled(): 0, pid: 0, name: swapper
> > Pid: 0, comm: swapper Not tainted 2.6.29.1-54.fc11.x86_64 #1
>
> Is this specific to 2.6.29.1? It looks like setting low_latency, as cdc-acm,
> does for legacy reasons, is harmful now. Please remove these lines:

The only thing that has changed is that this incorrect behaviour (setting
low_latency and doing a flip_buffer_push() in IRQ context) now causes a
warn rather than random failure.

The hack setting of it for high data rate devices was obsolete when the
tty buffer changes went in so it can definitely go in those cases.
--
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/