Re: [CHECKER] potential deadlocks

From: Dawson Engler (engler@csl.stanford.edu)
Date: Tue Mar 04 2003 - 02:52:24 EST


> Andrew Morton writes:
> > Dawson Engler <engler@csl.stanford.edu> wrote:
> > >
> > > BTW, are there known deadlocks (harmless or otherwise)? Debugging
> > > the checker is a bit hard since false negatives are silent...
> >
> > Known deadlocks tend to get fixed. But I am surprised that you did not
> > encounter more of them.
> >
> > btw, the filesystem transaction operations can be treated as sleeping locks.
> > So for ext3, journal_start()/journal_stop() may, for lock-ranking purposes,
> > be treated in the same way as taking and releasing a per-superblock
> > semaphore. Other filesystems probably have similar restrictions.
> >
>
> So are page-fault and memory allocation events, because thread
> blocks on them, and deadlocks involving servicing page fault or memory
> laundering have definitely been seen.

Do you mean calls to copy_*_user and kmalloc(GFP_WAIT) or did you have
something else in mind as well?

> We have (incomplete) description of kernel lock ordering, which is
> centered around reiser4 locks, but also includes some core kernel stuff.
>
> It is available at
>
> http://www.namesys.com/v4/lock-ordering.dot --- source for Bell-Labs' dot(1)
> http://www.namesys.com/v4/lock-ordering.ps --- postscript output, produced from the .dot source

Wonderful; thanks!

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Fri Mar 07 2003 - 22:00:24 EST