[lkml]   [2008]   [Aug]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: combinatorial explosion in lockdep
    From: Ingo Molnar <>
    Date: Fri, 1 Aug 2008 11:22:19 +0200

    > * Ingo Molnar <> wrote:
    > >
    > > * David Miller <> wrote:
    > >
    > > > lockdep: Fix combinatorial explosion in lock subgraph traversal.
    > >
    > > applied to tip/core/locking - thanks David. I guess we need to test
    > > this a bit, the patch is far from simple :-)
    > small build fallout fix below.


    BTW, until something like Peter's attempt is working, we need to also
    scale some of the lockdep limits by NR_CPUS. The formula I came up
    with that worked with my 32-cpu, 64-cpu and 128-cpu machines was:

    #define __LOCKDEP_NR_CPU_SCALE \
    ((NR_CPUS <= 16) ? 0 : ilog2(NR_CPUS) - 4)



    But this is going to explode for NR_CPUS=4096, but it is the only way
    to get a working lockdep currently, due to the runqueue lock classes.

    Also, when these limits reached triggered, we get the same printk
    wakeup deadlock problem I hit with Peter's patch.

    I think a non-trivial number of people hit that printk deadlock bug,
    but just didn't report it because the machine essentially hard hangs
    silently. At best you'd see the:


    initial line from lockdep, but often even that doesn't make it to the

     \ /
      Last update: 2008-08-01 11:35    [W:0.020 / U:104.896 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site