Re: lockdep warning with 2.6.29-rc6-mm1 (mmotm 24-feb-2009)

From: Eric Paris
Date: Fri Mar 06 2009 - 10:42:14 EST


On Fri, 2009-03-06 at 21:08 +0530, Balbir Singh wrote:
> * Nick Piggin <npiggin@xxxxxxx> [2009-03-05 08:00:45]:
>
> > On Wed, Mar 04, 2009 at 06:41:15PM +0100, Ingo Molnar wrote:
> > >
> > > * Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
> > >
> > > > On Wed, 2009-03-04 at 18:27 +0530, Balbir Singh wrote:
> > > > > I see the following on my machine. My understanding is that the
> > > > > lockdep warning is complaining about a potential deadlock while
> > > > > reclaiming, where we could end up waiting on holding inotify_mutex,
> > > > > and we could end up calling reclaim with inotify_mutex held.
> > > > >
> > > > > The race seems rare, since one path shows a new inode being created
> > > > > and the other one being deleted. It seems like a false positive unless
> > > > > the inode's in question turn out to be potentially the same.
> > > >
> > > > Its not a false positive until you can guarantee the inodes will _never_
> > > > be the same.
> > > >
> > > > This thing has been reported numerous times, Ingo even posted
> > > > a potential fix for it, Nick poked the inotify people to speak
> > > > up, but they have so far been silent on the issue :-(
> > >
> > > that particular fix is upstream, via:
> > >
> > > 3023a3e: inotify: fix GFP_KERNEL related deadlock
> > >
> > > so does this reproduce with latest .29-rc7-ish kernels too - or
> > > do we have some other problem in this area too?
> >
> > Well as I said, I think it is just a bandaid to shut up lockdep,
> > because I think inotify always is guaranteed to have a ref on
> > the inode at this point so it should not be subject to reclaim.
>
> I got dropped from the cc and thus could not respond earlier. The
> problem can be seen even in 2.6.29-rc7-mm1.

Ok, I'll take a look at it this afternoon. Sadly I know those
allocations and object lifetimes all to well now.

-Eric

--
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/