lkml.org 
[lkml]   [2003]   [Mar]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [CHECKER] potential deadlocks
    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.

    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

    > Other such "hidden" sleeping locks are lock_sock() and wait_on_inode(). The
    > latter is rather messy because there is no clear API function which sets
    > I_LOCK.

    Nikita.

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

    \
     
     \ /
      Last update: 2005-03-22 13:33    [W:0.046 / U:0.280 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site