lkml.org 
[lkml]   [2008]   [Jul]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [lockdep warning] INFO: inconsistent lock state, serial8250_interrupt(), &port_lock_key

* Borislav Petkov <petkovbb@googlemail.com> wrote:

> On Thu, Jul 24, 2008 at 08:53:29AM +0200, Borislav Petkov wrote:
> > On Wed, Jul 23, 2008 at 11:36:04AM +0200, Ingo Molnar wrote:
> > >
> > > * Ingo Molnar <mingo@elte.hu> wrote:
> > >
> > > > =================================
> > > > [ INFO: inconsistent lock state ]
> > > > 2.6.26-tip-06509-gb4ebc67-dirty #13600
> > > > ---------------------------------
> > >
> > > the upstream component of that is: v2.6.26-6077-gc010b2f
> > >
> > > i.e. my suspicion is that this got introduced via the recent tty
> > > changes.
> >
> > Hi,
> >
> > i hit the same warning here. How about the following fix (this is at least what
> > i think happens):
> > --
> >
> > serial8250_startup() might unconditionally enable irqs after releasing
> > &up->port.lock while we're still servicing an interrupt.
>
> Actually, this explanation is not correct - it should be more like:
>
> serial8250_startup() doesn't disable interrupts while taking the
> &up->port.lock which might race against the interrupt handler
> serial8250_interrupt(), which when entered, will deadlock waiting for
> the lock to be released.

thanks Borislav, your patch seems to have done the trick.

Tested-by: Ingo Molnar <mingo@elte.hu>

Ingo


\
 
 \ /
  Last update: 2008-07-24 11:45    [W:0.209 / U:0.076 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site