From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754289Ab0A3T2m (ORCPT ); Sat, 30 Jan 2010 14:28:42 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1754078Ab0A3T2l (ORCPT ); Sat, 30 Jan 2010 14:28:41 -0500 Received: from proxima.lp0.eu ([81.2.80.65]:55447 "EHLO proxima.lp0.eu" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753734Ab0A3T2k (ORCPT ); Sat, 30 Jan 2010 14:28:40 -0500 Message-ID: <4B648866.9050407@simon.arlott.org.uk> Date: Sat, 30 Jan 2010 19:28:38 +0000 From: Simon Arlott User-Agent: Thunderbird 2.0.0.23 (X11/20090927) MIME-Version: 1.0 To: Linux Kernel Mailing List Subject: lockdep warning: tty_write_message (tty->atomic_write_lock) / __dquot_alloc_space (s->s_dquot.dqptr_sem) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The hard block quota limit was exceeded at the time. According to sshd logs I had just logged out when this happened: 30 15:19:49 [ 9670.879506] ======================================================= 30 15:19:49 [ 9670.880008] [ INFO: possible circular locking dependency detected ] 30 15:19:49 [ 9670.880008] 2.6.33-rc6-git #22831-gc862701 30 15:19:49 [ 9670.880008] ------------------------------------------------------- 30 15:19:49 [ 9670.880008] bash/29957 is trying to acquire lock: 30 15:19:49 [ 9670.880008] (&tty->atomic_write_lock){+.+.+.}, at: [] tty_write_message+0x1b/0x8c 30 15:19:49 [ 9670.880008] 30 15:19:49 [ 9670.880008] but task is already holding lock: 30 15:19:49 [ 9670.880008] (&s->s_dquot.dqptr_sem){++++-.}, at: [] __dquot_alloc_space+0x38/0x194 30 15:19:49 [ 9670.880008] 30 15:19:49 [ 9670.880008] which lock already depends on the new lock. 30 15:19:49 [ 9670.880008] 30 15:19:49 [ 9670.939134] 30 15:19:49 [ 9670.939134] the existing dependency chain (in reverse order) is: 30 15:19:49 [ 9670.939134] 30 15:19:49 [ 9670.939134] -> #3 (&s->s_dquot.dqptr_sem){++++-.}: 30 15:19:49 [ 9670.939134] [] __lock_acquire+0x1099/0x139a 30 15:19:49 [ 9670.939134] [] lock_acquire+0x46/0x5d 30 15:19:49 [ 9670.939134] [] down_write+0x2c/0x48 30 15:19:49 [ 9670.970138] [] dquot_initialize+0x75/0xf3 30 15:19:49 [ 9670.979269] [] ext3_new_inode+0x7fd/0x940 30 15:19:49 [ 9670.982079] [] ext3_create+0x85/0xeb 30 15:19:49 [ 9670.990593] [] vfs_create+0xbf/0x103 30 15:19:49 [ 9670.996281] [] do_filp_open+0x296/0x84f 30 15:19:49 [ 9671.000364] [] do_sys_open+0x4a/0xe7 30 15:19:49 [ 9671.007049] [] sys_open+0x1e/0x26 30 15:19:49 [ 9671.010435] [] sysenter_do_call+0x12/0x36 30 15:19:49 [ 9671.016425] 30 15:19:49 [ 9671.016425] -> #2 (jbd_handle){+.+.-.}: 30 15:19:49 [ 9671.020508] [] __lock_acquire+0x1099/0x139a 30 15:19:49 [ 9671.029542] [] lock_acquire+0x46/0x5d 30 15:19:49 [ 9671.033066] [] start_this_handle+0x30e/0x330 30 15:19:49 [ 9671.040671] [] journal_start+0xa1/0xcd 30 15:19:49 [ 9671.046644] [] ext3_journal_start_sb+0x40/0x42 30 15:19:49 [ 9671.051792] [] ext3_dirty_inode+0x24/0x67 30 15:19:49 [ 9671.056714] [] __mark_inode_dirty+0x23/0x115 30 15:19:49 [ 9671.060794] [] file_update_time+0xd2/0xef 30 15:19:49 [ 9671.070868] [] do_wp_page+0x775/0x7a5 30 15:19:49 [ 9671.072144] [] handle_mm_fault+0x7dc/0x873 30 15:19:49 [ 9671.080997] [] do_page_fault+0x289/0x2a0 30 15:19:49 [ 9671.087059] [] error_code+0x6b/0x70 30 15:19:49 [ 9671.091070] 30 15:19:49 [ 9671.091070] -> #1 (&mm->mmap_sem){++++++}: 30 15:19:49 [ 9671.097132] [] __lock_acquire+0x1099/0x139a 30 15:19:49 [ 9671.101143] [] lock_acquire+0x46/0x5d 30 15:19:49 [ 9671.111213] [] might_fault+0x6b/0x88 30 15:19:49 [ 9671.116834] [] _copy_from_user+0x2e/0x108 30 15:19:49 [ 9671.121281] [] tty_write+0x140/0x1d1 30 15:19:49 [ 9671.127360] [] redirected_tty_write+0x62/0x6f 30 15:19:49 [ 9671.132971] [] vfs_write+0x8a/0x113 30 15:19:49 [ 9671.138966] [] sys_write+0x3b/0x60 30 15:19:49 [ 9671.144516] [] sysenter_do_call+0x12/0x36 30 15:19:49 [ 9671.150541] 30 15:19:49 [ 9671.150541] -> #0 (&tty->atomic_write_lock){+.+.+.}: 30 15:19:49 [ 9671.156957] [] __lock_acquire+0xe24/0x139a 30 15:19:49 [ 9671.162955] [] lock_acquire+0x46/0x5d 30 15:19:49 [ 9671.168955] [] mutex_lock_nested+0x47/0x2b2 30 15:19:49 [ 9671.174950] [] tty_write_message+0x1b/0x8c 30 15:19:49 [ 9671.180950] [] flush_warnings+0xf9/0x1af 30 15:19:49 [ 9671.186512] [] __dquot_alloc_space+0x17a/0x194 30 15:19:49 [ 9671.192944] [] dquot_alloc_space+0xd/0xf 30 15:19:49 [ 9671.198553] [] ext3_new_blocks+0x9c/0x5a1 30 15:19:49 [ 9671.204503] [] ext3_get_blocks_handle+0x36e/0x7b2 30 15:19:49 [ 9671.210936] [] ext3_get_block+0x9b/0xd0 30 15:19:49 [ 9671.216495] [] __block_prepare_write+0x147/0x310 30 15:19:49 [ 9671.222931] [] block_write_begin+0x75/0xcc 30 15:19:49 [ 9671.228283] [] ext3_write_begin+0xcd/0x1ba 30 15:19:49 [ 9671.232124] [] generic_file_buffered_write+0xb8/0x1cc 30 15:19:49 [ 9671.241879] [] __generic_file_aio_write+0x3c4/0x3fc 30 15:19:49 [ 9671.248425] [] generic_file_aio_write+0x5a/0x9b 30 15:19:49 [ 9671.252277] [] do_sync_write+0x89/0xc7 30 15:19:49 [ 9671.258494] [] vfs_write+0x8a/0x113 30 15:19:49 [ 9671.262348] [] sys_write+0x3b/0x60 30 15:19:49 [ 9671.270834] [] sysenter_do_call+0x12/0x36 30 15:19:49 [ 9671.274853] 30 15:19:49 [ 9671.274853] other info that might help us debug this: 30 15:19:49 [ 9671.274853] 30 15:19:49 [ 9671.284908] 4 locks held by bash/29957: 30 15:19:49 [ 9671.290030] #0: (&sb->s_type->i_mutex_key#3){+.+.+.}, at: [] generic_file_aio_write+0x4a/0x9b 30 15:19:49 [ 9671.298792] #1: (jbd_handle){+.+.-.}, at: [] start_this_handle+0x2d1/0x330 30 15:19:49 [ 9671.306457] #2: (&ei->truncate_mutex){+.+...}, at: [] ext3_get_blocks_handle+0x154/0x7b2 30 15:19:49 [ 9671.318454] #3: (&s->s_dquot.dqptr_sem){++++-.}, at: [] __dquot_alloc_space+0x38/0x194 30 15:19:49 [ 9671.327887] 30 15:19:49 [ 9671.327887] stack backtrace: 30 15:19:49 [ 9671.332879] Pid: 29957, comm: bash Not tainted 2.6.33-rc6-git #22831-gc862701 30 15:19:49 [ 9671.340336] Call Trace: 30 15:19:49 [ 9671.342953] [] ? printk+0xf/0x11 30 15:19:49 [ 9671.346664] [] print_circular_bug+0x90/0x9c 30 15:19:49 [ 9671.351878] [] __lock_acquire+0xe24/0x139a 30 15:19:49 [ 9671.357892] [] ? add_lock_to_list+0x63/0x95 30 15:19:49 [ 9671.363441] [] lock_acquire+0x46/0x5d 30 15:19:49 [ 9671.367929] [] ? tty_write_message+0x1b/0x8c 30 15:19:49 [ 9671.373166] [] ? tty_write_message+0x1b/0x8c 30 15:19:49 [ 9671.379353] [] mutex_lock_nested+0x47/0x2b2 30 15:19:49 [ 9671.384862] [] ? tty_write_message+0x1b/0x8c 30 15:19:49 [ 9671.390862] [] ? _raw_spin_unlock_irqrestore+0x36/0x58 30 15:19:49 [ 9671.396860] [] ? trace_hardirqs_on_caller+0xff/0x120 30 15:19:49 [ 9671.403353] [] ? trace_hardirqs_on+0xb/0xd 30 15:19:49 [ 9671.408855] [] tty_write_message+0x1b/0x8c 30 15:19:49 [ 9671.413981] [] flush_warnings+0xf9/0x1af 30 15:19:49 [ 9671.417851] [] __dquot_alloc_space+0x17a/0x194 30 15:19:49 [ 9671.423496] [] dquot_alloc_space+0xd/0xf 30 15:19:49 [ 9671.429848] [] ext3_new_blocks+0x9c/0x5a1 30 15:19:49 [ 9671.435411] [] ? mutex_lock_nested+0x272/0x2b2 30 15:19:49 [ 9671.441407] [] ? mutex_lock_nested+0x298/0x2b2 30 15:19:49 [ 9671.444841] [] ext3_get_blocks_handle+0x36e/0x7b2 30 15:19:49 [ 9671.450838] [] ? mark_held_locks+0x43/0x5b 30 15:19:49 [ 9671.456834] [] ? kmem_cache_alloc+0x89/0xb0 30 15:19:49 [ 9671.463785] [] ? trace_hardirqs_on_caller+0xff/0x120 30 15:19:49 [ 9671.470000] [] ext3_get_block+0x9b/0xd0 30 15:19:49 [ 9671.474829] [] __block_prepare_write+0x147/0x310 30 15:19:49 [ 9671.480825] [] block_write_begin+0x75/0xcc 30 15:19:49 [ 9671.485952] [] ? ext3_get_block+0x0/0xd0 30 15:19:49 [ 9671.490142] [] ext3_write_begin+0xcd/0x1ba 30 15:19:49 [ 9671.495820] [] ? ext3_get_block+0x0/0xd0 30 15:19:49 [ 9671.501817] [] generic_file_buffered_write+0xb8/0x1cc 30 15:19:49 [ 9671.507814] [] ? current_fs_time+0x16/0x19 30 15:19:49 [ 9671.514145] [] __generic_file_aio_write+0x3c4/0x3fc 30 15:19:49 [ 9671.520353] [] ? mutex_lock_nested+0x272/0x2b2 30 15:19:49 [ 9671.525807] [] generic_file_aio_write+0x5a/0x9b 30 15:19:49 [ 9671.531912] [] do_sync_write+0x89/0xc7 30 15:19:49 [ 9671.534817] [] ? might_fault+0x4e/0x88 30 15:19:49 [ 9671.540506] [] ? kmem_cache_free+0xf6/0x102 30 15:19:49 [ 9671.546798] [] ? trace_hardirqs_on+0xb/0xd 30 15:19:49 [ 9671.552360] [] ? security_file_permission+0xf/0x11 30 15:19:49 [ 9671.558794] [] ? do_sync_write+0x0/0xc7 30 15:19:49 [ 9671.561793] [] vfs_write+0x8a/0x113 30 15:19:49 [ 9671.567790] [] sys_write+0x3b/0x60 30 15:19:49 [ 9671.573356] [] sysenter_do_call+0x12/0x36 -- Simon Arlott