[lkml]   [2006]   [Feb]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH -rt] buggy UART fix
On Tue, 2006-02-28 at 21:40 +0100, Ingo Molnar wrote:
> hm, i just got the deadlock below, most likely due to your serial fix.
> (never got this before) It's not 100% reproducible - booted the kernel a
> dozen times (with your patch applied, working on other stuff) before i
> got this deadlock.

The original patch grabs the port.lock and then
calls serial8250_handle_port() which grabs the lock
again. Just remove the spin_lock/spin_unlock below.

+ /*
+ * If we have a buggy TX line, that doesn't
+ * notify us via iir that we need to transmit
+ * then force the call.
+ */
+ if (!handled && (up->bugs & UART_BUG_TXEN)) {
+ spin_lock(&up->port.lock);
+ serial8250_handle_port(up, regs);
+ spin_unlock(&up->port.lock);
+ }
Paul Fulghum
Microgate Systems, Ltd

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2006-02-28 22:29    [from the cache]
©2003-2014 Jasper Spaans. hosted at Digital Ocean