Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754147AbYBXMLP (ORCPT ); Sun, 24 Feb 2008 07:11:15 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751116AbYBXMLB (ORCPT ); Sun, 24 Feb 2008 07:11:01 -0500 Received: from sovereign.computergmbh.de ([85.214.69.204]:60444 "EHLO sovereign.computergmbh.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750875AbYBXMLA (ORCPT ); Sun, 24 Feb 2008 07:11:00 -0500 Date: Sun, 24 Feb 2008 13:10:58 +0100 (CET) From: Jan Engelhardt To: netdev@vger.kernel.org cc: Linux Kernel Mailing List Subject: lockdep warnings in ipv6 Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 6616 Lines: 129 Hi, when doing IPv6 (ping6, ssh otherhost, etc.), lockdep spews a warning in 2.6.25-rc2 on the target. CONFIG_..._FRAME_POINTER is off, CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y # CONFIG_FRAME_POINTER is not set so I am not sure if the stack trace is worth something, is it? [ 449.168320] ======================================================= [ 449.168637] [ INFO: possible circular locking dependency detected ] [ 449.168851] 2.6.25-rc2 #67 [ 449.168951] ------------------------------------------------------- [ 449.169078] swapper/0 is trying to acquire lock: [ 449.169315] (&tbl->lock){-+-+}, at: [] neigh_lookup+0x43/0xb0 [ 449.170147] [ 449.170150] but task is already holding lock: [ 449.170309] (&n->lock){-+-+}, at: [] neigh_timer_handler+0x15/0x2a0 [ 449.170512] [ 449.170514] which lock already depends on the new lock. [ 449.170516] [ 449.170736] [ 449.170738] the existing dependency chain (in reverse order) is: [ 449.170926] [ 449.170927] -> #1 (&n->lock){-+-+}: [ 449.171188] [] add_lock_to_list+0x46/0xc0 [ 449.171509] [] __lock_acquire+0xb48/0xf90 [ 449.171678] [] neigh_periodic_timer+0x7a/0x170 [ 449.171849] [] lock_acquire+0x5f/0x80 [ 449.172007] [] neigh_periodic_timer+0x7a/0x170 [ 449.172173] [] _write_lock+0x29/0x40 [ 449.172342] [] neigh_periodic_timer+0x7a/0x170 [ 449.172508] [] neigh_periodic_timer+0x7a/0x170 [ 449.172670] [] run_timer_softirq+0x15f/0x1c0 [ 449.172984] [] neigh_periodic_timer+0x0/0x170 [ 449.173180] [] neigh_periodic_timer+0x0/0x170 [ 449.173349] [] __do_softirq+0x52/0xb0 [ 449.173516] [] do_softirq+0x45/0x50 [ 449.173675] [] irq_exit+0x55/0x70 [ 449.173831] [] do_IRQ+0x43/0x90 [ 449.173987] [] common_interrupt+0x24/0x40 [ 449.174147] [] common_interrupt+0x2e/0x40 [ 449.174308] [] 0xffffffff [ 449.174767] [ 449.174769] -> #0 (&tbl->lock){-+-+}: [ 449.174939] [] print_circular_bug_entry+0x40/0x50 [ 449.175108] [] __lock_acquire+0x971/0xf90 [ 449.175268] [] __lock_acquire+0x15e/0xf90 [ 449.175468] [] trace_hardirqs_on+0x66/0x110 [ 449.175633] [] lock_acquire+0x5f/0x80 [ 449.175793] [] neigh_lookup+0x43/0xb0 [ 449.175973] [] _read_lock_bh+0x2e/0x40 [ 449.176139] [] neigh_lookup+0x43/0xb0 [ 449.176303] [] neigh_lookup+0x43/0xb0 [ 449.177821] [] ndisc_dst_alloc+0x13c/0x1a0 [ipv6] [ 449.177821] [] ndisc_dst_alloc+0x0/0x1a0 [ipv6] [ 449.177821] [] __ndisc_send+0x95/0x4e0 [ipv6] [ 449.177821] [] ip6_output+0x0/0xb00 [ipv6] [ 449.177821] [] ndisc_send_ns+0x67/0xa0 [ipv6] [ 449.177821] [] ipv6_chk_addr+0xa0/0xb0 [ipv6] [ 449.177821] [] ndisc_solicit+0x9f/0x1b0 [ipv6] [ 449.177821] [] mark_held_locks+0x38/0x70 [ 449.177821] [] _spin_unlock_irqrestore+0x45/0x60 [ 449.177821] [] trace_hardirqs_on+0x66/0x110 [ 449.177821] [] neigh_timer_handler+0x155/0x2a0 [ 449.177821] [] run_timer_softirq+0x15f/0x1c0 [ 449.177821] [] neigh_timer_handler+0x0/0x2a0 [ 449.177821] [] neigh_timer_handler+0x0/0x2a0 [ 449.177821] [] __do_softirq+0x52/0xb0 [ 449.177821] [] do_softirq+0x45/0x50 [ 449.177821] [] irq_exit+0x55/0x70 [ 449.177821] [] do_IRQ+0x43/0x90 [ 449.177821] [] common_interrupt+0x24/0x40 [ 449.177821] [] common_interrupt+0x2e/0x40 [ 449.177821] [] default_idle+0x5e/0x90 [ 449.177821] [] default_idle+0x0/0x90 [ 449.177821] [] cpu_idle+0x30/0x80 [ 449.177821] [] 0xffffffff [ 449.177821] [ 449.177821] other info that might help us debug this: [ 449.177821] [ 449.177821] 1 lock held by swapper/0: [ 449.177821] #0: (&n->lock){-+-+}, at: [] neigh_timer_handler+0x15/0x2a0 [ 449.177821] [ 449.177821] stack backtrace: [ 449.177821] Pid: 0, comm: swapper Not tainted 2.6.25-rc2 #67 [ 449.177821] [] print_circular_bug_tail+0x72/0x80 [ 449.177821] [] __lock_acquire+0x971/0xf90 [ 449.177821] [] __lock_acquire+0x15e/0xf90 [ 449.177821] [] trace_hardirqs_on+0x66/0x110 [ 449.177821] [] lock_acquire+0x5f/0x80 [ 449.177821] [] neigh_lookup+0x43/0xb0 [ 449.177821] [] _read_lock_bh+0x2e/0x40 [ 449.177821] [] neigh_lookup+0x43/0xb0 [ 449.177821] [] neigh_lookup+0x43/0xb0 [ 449.177821] [] ndisc_dst_alloc+0x13c/0x1a0 [ipv6] [ 449.177821] [] ndisc_dst_alloc+0x0/0x1a0 [ipv6] [ 449.177821] [] __ndisc_send+0x95/0x4e0 [ipv6] [ 449.177821] [] ip6_output+0x0/0xb00 [ipv6] [ 449.177821] [] ndisc_send_ns+0x67/0xa0 [ipv6] [ 449.177821] [] ipv6_chk_addr+0xa0/0xb0 [ipv6] [ 449.177821] [] ndisc_solicit+0x9f/0x1b0 [ipv6] [ 449.177821] [] mark_held_locks+0x38/0x70 [ 449.177821] [] _spin_unlock_irqrestore+0x45/0x60 [ 449.177821] [] trace_hardirqs_on+0x66/0x110 [ 449.177821] [] neigh_timer_handler+0x155/0x2a0 [ 449.177821] [] run_timer_softirq+0x15f/0x1c0 [ 449.177821] [] neigh_timer_handler+0x0/0x2a0 [ 449.177821] [] neigh_timer_handler+0x0/0x2a0 [ 449.177821] [] __do_softirq+0x52/0xb0 [ 449.177821] [] do_softirq+0x45/0x50 [ 449.177821] [] irq_exit+0x55/0x70 [ 449.177821] [] do_IRQ+0x43/0x90 [ 449.177821] [] common_interrupt+0x24/0x40 [ 449.177821] [] common_interrupt+0x2e/0x40 [ 449.177821] [] default_idle+0x5e/0x90 [ 449.177821] [] default_idle+0x0/0x90 [ 449.177821] [] cpu_idle+0x30/0x80 [ 449.177821] ======================= -- 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/