From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1762632AbXLRRO2 (ORCPT ); Tue, 18 Dec 2007 12:14:28 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1759026AbXLRROU (ORCPT ); Tue, 18 Dec 2007 12:14:20 -0500 Received: from styx.suse.cz ([82.119.242.94]:43062 "EHLO duck.suse.cz" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1757685AbXLRROU (ORCPT ); Tue, 18 Dec 2007 12:14:20 -0500 Date: Tue, 18 Dec 2007 18:14:17 +0100 From: Jan Kara To: linux-kernel@vger.kernel.org Subject: Lockdep warning with netlink Message-ID: <20071218171417.GF31091@duck.suse.cz> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.16 (2007-06-09) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, I'm getting the following lockdep warning on my test machine (running reasonably recent kernel from -git): ======================================================= [ INFO: possible circular locking dependency detected ] 2.6.24-rc3-g406f602d-dirty #28 ------------------------------------------------------- quota_nld/3253 is trying to acquire lock: (genl_mutex){--..}, at: [] ctrl_dumpfamily+0x37/0xea but task is already holding lock: (nlk->cb_mutex){--..}, at: [] netlink_dump+0x3a/0x16f which lock already depends on the new lock. the existing dependency chain (in reverse order) is: -> #1 (nlk->cb_mutex){--..}: [] __lock_acquire+0xa12/0xbd9 [] lock_acquire+0x5f/0x78 [] mutex_lock_nested+0xff/0x273 [] netlink_dump_start+0xcb/0x13b [] genl_rcv_msg+0xa3/0x14c [] netlink_rcv_skb+0x30/0x86 [] genl_rcv+0x1e/0x2d [] netlink_unicast+0x19a/0x1f2 [] netlink_sendmsg+0x251/0x25d [] sock_sendmsg+0xcc/0xe5 [] sys_sendmsg+0x151/0x1af [] sys_socketcall+0x203/0x222 [] sysenter_past_esp+0x5f/0xa5 [] 0xffffffff -> #0 (genl_mutex){--..}: [] __lock_acquire+0x906/0xbd9 [] lock_acquire+0x5f/0x78 [] mutex_lock_nested+0xff/0x273 [] ctrl_dumpfamily+0x37/0xea [] netlink_dump+0x52/0x16f [] netlink_recvmsg+0x15f/0x21d [] sock_recvmsg+0xd6/0xef [] sys_recvmsg+0xf8/0x188 [] sys_socketcall+0x218/0x222 [] sysenter_past_esp+0x5f/0xa5 [] 0xffffffff other info that might help us debug this: 1 lock held by quota_nld/3253: #0: (nlk->cb_mutex){--..}, at: [] netlink_dump+0x3a/0x16f stack backtrace: [] show_trace_log_lvl+0x1a/0x2f [] show_trace+0x12/0x14 [] dump_stack+0x16/0x18 [] print_circular_bug_tail+0x5f/0x68 [] __lock_acquire+0x906/0xbd9 [] lock_acquire+0x5f/0x78 [] mutex_lock_nested+0xff/0x273 [] ctrl_dumpfamily+0x37/0xea [] netlink_dump+0x52/0x16f [] netlink_recvmsg+0x15f/0x21d [] sock_recvmsg+0xd6/0xef [] sys_recvmsg+0xf8/0x188 [] sys_socketcall+0x218/0x222 [] sysenter_past_esp+0x5f/0xa5 ======================= Honza -- Jan Kara SUSE Labs, CR