Re: [PATCH 2/2] lockdep: fix fib_hash softirq inversion

From: David Miller
Date: Thu Mar 13 2008 - 02:08:49 EST


From: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
Date: Wed, 12 Mar 2008 13:09:22 +0100

> =========================================================
> [ INFO: possible irq lock inversion dependency detected ]
> 2.6.25-rc4-sched-devel.git #56
> ---------------------------------------------------------
> swapper/0 just changed the state of lock:
> (&rt_hash_locks[i]){-+..}, at: [<ffffffff804721ac>] rt_intern_hash+0x8c/0x3b0
> but this lock took another, soft-read-irq-unsafe lock in the past:
> (fib_hash_lock){-.-?}
>
> and interrupts could create inverse lock ordering between them.

I tried to figure out what lockdep doesn't like here.

Could you show me the specific code path that could cause
the lock conflict?

Adding BH disabling to fib_hash_lock will add non-trivial
costs to these code paths, so I'd like to avoid this if
possible.
--
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/