From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1765060AbXHPSA2 (ORCPT ); Thu, 16 Aug 2007 14:00:28 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1760761AbXHPSAR (ORCPT ); Thu, 16 Aug 2007 14:00:17 -0400 Received: from 184-35.202-62.fix.bluewin.ch ([62.202.35.184]:62505 "EHLO steudten.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1759825AbXHPSAN (ORCPT ); Thu, 16 Aug 2007 14:00:13 -0400 X-Greylist: delayed 558 seconds by postgrey-1.27 at vger.kernel.org; Thu, 16 Aug 2007 14:00:12 EDT Message-ID: <46C48E73.8090309@steudten.com> Date: Thu, 16 Aug 2007 19:50:43 +0200 From: Authenticated Organization: Steudten Engineering MIME-Version: 1.0 To: LKML Subject: Kernel 2.6.20: INFO: possible circular locking dependency detected Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-2.1.12 (steudten.com [62.202.35.184]); Thu, 16 Aug 2007 19:50:51 +0200 (CEST) X-Mailer: Mailer X-Check: c27183cdb48d80cbe7a8c2bf91c9fcf3 on steudten.com Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org ======================================================= [ INFO: possible circular locking dependency detected ] 2.6.20-1.2948.self #1 ------------------------------------------------------- squid/4058 is trying to acquire lock: (tty_mutex){--..}, at: [] print_warning+0x8b/0x12e but task is already holding lock: (&s->s_dquot.dqptr_sem){----}, at: [] dquot_alloc_inode+0x34/0x10a which lock already depends on the new lock. the existing dependency chain (in reverse order) is: -> #4 (&s->s_dquot.dqptr_sem){----}: [] __lock_acquire+0x950/0xa70 [] dquot_alloc_space+0x42/0x155 [] lock_acquire+0x67/0x89 [] dquot_alloc_space+0x42/0x155 [] down_read+0x38/0x49 [] dquot_alloc_space+0x42/0x155 [] dquot_alloc_space+0x42/0x155 [] ext3_new_blocks+0x83/0x5c4 [] mb_cache_entry_find_first+0x29/0x5b [] ext3_new_block+0x20/0x25 [] ext3_xattr_block_set+0x57b/0x7ce [] __ext3_get_inode_loc+0x10f/0x2fb [] journal_get_write_access+0x21/0x26 [] ext3_xattr_set_handle+0x37f/0x47f [] ext3_init_security+0x70/0x91 [] ext3_new_inode+0x877/0x98b [] start_this_handle+0x256/0x341 [] _spin_unlock+0x14/0x1c [] start_this_handle+0x325/0x341 [] cache_alloc_debugcheck_after+0xc4/0x136 [] trace_hardirqs_on+0x141/0x164 [] journal_stop+0x1ce/0x1da [] journal_start+0xaf/0xdd [] dquot_initialize+0x21/0x87 [] ext3_create+0x7b/0xe2 [] vfs_create+0xca/0x134 [] open_namei+0x177/0x5a2 [] get_unused_fd+0x22/0xbd [] __handle_mm_fault+0x8c0/0x8e2 [] do_filp_open+0x25/0x39 [] _spin_unlock+0x14/0x1c [] get_unused_fd+0xb3/0xbd [] do_sys_open+0x42/0xbe [] sys_open+0x1c/0x1e [] syscall_call+0x7/0xb [] 0xffffffff -> #3 (&ei->xattr_sem){----}: [] __lock_acquire+0x950/0xa70 [] ext3_xattr_get+0x2e/0x239 [] lock_acquire+0x67/0x89 [] ext3_xattr_get+0x2e/0x239 [] down_read+0x38/0x49 [] ext3_xattr_get+0x2e/0x239 [] ext3_xattr_get+0x2e/0x239 [] mark_held_locks+0x46/0x62 [] __mutex_lock_slowpath+0x292/0x2af [] cache_alloc_debugcheck_after+0xc4/0x136 [] ext3_xattr_security_get+0x41/0x4b [] generic_getxattr+0x41/0x47 [] inode_doinit_with_dentry+0x16e/0x4ba [] ext3_xattr_security_get+0x41/0x4b [] generic_getxattr+0x0/0x47 [] superblock_doinit+0x6c3/0x751 [] selinux_complete_init+0x64/0xb6 [] down_read+0x38/0x49 [] selinux_complete_init+0x73/0xb6 [] security_load_policy+0xed/0x275 [] _spin_unlock_irqrestore+0x3e/0x4d [] mark_held_locks+0x46/0x62 [] _spin_unlock_irqrestore+0x3e/0x4d [] _spin_unlock_irqrestore+0x3e/0x4d [] trace_hardirqs_on+0x141/0x164 [] delayacct_end+0x55/0x77 [] find_get_page+0xe/0x3b [] delayacct_end+0x70/0x77 [] _read_unlock_irq+0x20/0x2c [] mark_held_locks+0x46/0x62 [] _read_unlock_irq+0x20/0x2c [] __handle_mm_fault+0x263/0x8e2 [] find_get_page+0xe/0x3b [] find_get_page+0x36/0x3b [] __handle_mm_fault+0x263/0x8e2 [] kunmap_atomic+0x54/0x61 [] __handle_mm_fault+0x8c0/0x8e2 [] get_page_from_freelist+0x219/0x35e [] do_page_fault+0x16b/0x4f2 [] up_read+0x14/0x28 [] do_page_fault+0x291/0x4f2 [] restore_nocheck+0x12/0x15 [] __copy_from_user_ll+0xcb/0xd6 [] sel_write_load+0xa6/0x2dd [] sel_write_load+0x0/0x2dd [] vfs_write+0xa8/0x154 [] sys_write+0x41/0x67 [] syscall_call+0x7/0xb [] 0xffffffff -> #2 (&isec->lock){--..}: [] __lock_acquire+0x950/0xa70 [] inode_doinit_with_dentry+0x35/0x4ba [] check_usage+0x24/0x245 [] lock_acquire+0x67/0x89 [] inode_doinit_with_dentry+0x35/0x4ba [] __mutex_lock_slowpath+0x106/0x2af [] inode_doinit_with_dentry+0x35/0x4ba [] __might_sleep+0x21/0xf0 [] inode_doinit_with_dentry+0x35/0x4ba [] lock_release+0x16b/0x175 [] d_instantiate+0x7e/0x82 [] sysfs_create+0x85/0xb6 [] init_dir+0x0/0x1a [] create_dir+0x9e/0x19a [] sysfs_create_dir+0x45/0x5f [] kobject_add+0xdd/0x194 [] subsystem_register+0xf/0x1c [] mnt_init+0xe8/0x1c6 [] vfs_caches_init+0x135/0x144 [] security_init+0x2d/0x3d [] start_kernel+0x2cb/0x427 [] unknown_bootoption+0x0/0x202 [] 0xffffffff -> #1 (&sysfs_inode_imutex_key){--..}: [] __lock_acquire+0x950/0xa70 [] sysfs_hash_and_remove+0x34/0x116 [] __link_path_walk+0xad6/0xc13 [] trace_hardirqs_on+0x141/0x164 [] lock_acquire+0x67/0x89 [] sysfs_hash_and_remove+0x34/0x116 [] __mutex_lock_slowpath+0x106/0x2af [] sysfs_hash_and_remove+0x34/0x116 [] sysfs_hash_and_remove+0x34/0x116 [] device_remove_file+0x1c/0x28 [] device_del+0x29/0x1b8 [] device_unregister+0x8/0x10 [] vcs_remove_sysfs+0x17/0x31 [] con_close+0x49/0x5b [] release_dev+0x210/0x61e [] tty_open+0x233/0x2ba [] chrdev_open+0x10b/0x138 [] chrdev_open+0x0/0x138 [] fd_install+0x21/0x49 [] nameidata_to_filp+0x24/0x33 [] sys_close+0x21/0xa7 [] tty_release+0xf/0x18 [] __fput+0xb5/0x16b [] filp_close+0x51/0x58 [] sys_close+0x70/0xa7 [] syscall_call+0x7/0xb [] 0xffffffff -> #0 (tty_mutex){--..}: [] __lock_acquire+0x85a/0xa70 [] print_warning+0x8b/0x12e [] __mutex_unlock_slowpath+0x13c/0x150 [] mark_held_locks+0x46/0x62 [] __mutex_unlock_slowpath+0x13c/0x150 [] lock_acquire+0x67/0x89 [] print_warning+0x8b/0x12e [] __mutex_lock_slowpath+0x106/0x2af [] print_warning+0x8b/0x12e [] print_warning+0x8b/0x12e [] dquot_alloc_inode+0xec/0x10a [] ext3_new_inode+0x857/0x98b [] start_this_handle+0x256/0x341 [] _spin_unlock+0x14/0x1c [] start_this_handle+0x325/0x341 [] cache_alloc_debugcheck_after+0xc4/0x136 [] trace_hardirqs_on+0x141/0x164 [] journal_stop+0x1ce/0x1da [] journal_start+0xaf/0xdd [] ext3_create+0x7b/0xe2 [] vfs_create+0xca/0x134 [] open_namei+0x177/0x5a2 [] get_unused_fd+0x22/0xbd [] __audit_getname+0x84/0xdd [] do_filp_open+0x25/0x39 [] _spin_unlock+0x14/0x1c [] get_unused_fd+0xb3/0xbd [] _read_unlock+0x14/0x1c [] do_sys_open+0x42/0xbe [] sys_open+0x1c/0x1e [] syscall_call+0x7/0xb [] 0xffffffff other info that might help us debug this: 2 locks held by squid/4058: #0: (&inode->i_mutex){--..}, at: [] open_namei+0xe2/0x5a2 #1: (&s->s_dquot.dqptr_sem){----}, at: [] dquot_alloc_inode+0x34/0x10a stack backtrace: [] print_circular_bug_tail+0x5f/0x67 [] __lock_acquire+0x85a/0xa70 [] print_warning+0x8b/0x12e [] __mutex_unlock_slowpath+0x13c/0x150 [] mark_held_locks+0x46/0x62 [] __mutex_unlock_slowpath+0x13c/0x150 [] lock_acquire+0x67/0x89 [] print_warning+0x8b/0x12e [] __mutex_lock_slowpath+0x106/0x2af [] print_warning+0x8b/0x12e [] print_warning+0x8b/0x12e [] dquot_alloc_inode+0xec/0x10a [] ext3_new_inode+0x857/0x98b [] start_this_handle+0x256/0x341 [] _spin_unlock+0x14/0x1c [] start_this_handle+0x325/0x341 [] cache_alloc_debugcheck_after+0xc4/0x136 [] trace_hardirqs_on+0x141/0x164 [] journal_stop+0x1ce/0x1da [] journal_start+0xaf/0xdd [] ext3_create+0x7b/0xe2 [] vfs_create+0xca/0x134 [] open_namei+0x177/0x5a2 [] get_unused_fd+0x22/0xbd [] __audit_getname+0x84/0xdd [] do_filp_open+0x25/0x39 [] _spin_unlock+0x14/0x1c [] get_unused_fd+0xb3/0xbd [] _read_unlock+0x14/0x1c [] do_sys_open+0x42/0xbe [] sys_open+0x1c/0x1e [] syscall_call+0x7/0xb =======================