From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757564AbYIIVD5 (ORCPT ); Tue, 9 Sep 2008 17:03:57 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753444AbYIIVDt (ORCPT ); Tue, 9 Sep 2008 17:03:49 -0400 Received: from gv-out-0910.google.com ([216.239.58.189]:60779 "EHLO gv-out-0910.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753419AbYIIVDs (ORCPT ); Tue, 9 Sep 2008 17:03:48 -0400 DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:mime-version:content-type :content-transfer-encoding:content-disposition; b=GCGQgYkDacbfCaqYxiXczyN9ozIcgZbhObSN7mHnmo2e4hzrvNVKLt9xGULKsHh3Rg SO4C64dnOob/Yu9ZTbAwufBUMZ72L9F3WZoqNPp+je4KhOggYUP+EqbVqCCamnh28Zzz QbC+lL5/6SXg9W13FgYK+INJ+HKMlup7SWY8c= Message-ID: <6278d2220809091403k65187128keec3b401717f1ec0@mail.gmail.com> Date: Tue, 9 Sep 2008 22:03:45 +0100 From: "Daniel J Blueman" To: "Linux Kernel" Subject: [2.6.27-rc5] inotify_read's ev_mutex vs do_page_fault's mmap_sem... MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org I observed this locking violation [1] while gnome-panel was loading; this was previously reported at http://uwsg.iu.edu/hypermail/linux/kernel/0806.3/2881.html . Let me know for more information/config/testing. Thanks! Daniel --- [1] ======================================================= [ INFO: possible circular locking dependency detected ] 2.6.27-rc5-233c-debug #2 ------------------------------------------------------- gnome-panel/4944 is trying to acquire lock: (&mm->mmap_sem){----}, at: [] do_page_fault+0x12f/0xae0 but task is already holding lock: (&dev->ev_mutex){--..}, at: [] inotify_read+0xe3/0x200 which lock already depends on the new lock. the existing dependency chain (in reverse order) is: -> #3 (&dev->ev_mutex){--..}: [] __lock_acquire+0xd49/0x1190 [] lock_acquire+0x91/0xc0 [] __mutex_lock_common+0xb9/0x430 [] mutex_lock_nested+0x3f/0x50 [] inotify_dev_queue_event+0x46/0x1c0 [] inotify_inode_queue_event+0xc6/0x110 [] fsnotify_create+0x3c/0x70 [] vfs_create+0xbd/0xd0 [] do_filp_open+0x80e/0x910 [] do_sys_open+0x80/0x110 [] sys_open+0x20/0x30 [] system_call_fastpath+0x16/0x1b [] 0xffffffffffffffff -> #2 (&ih->mutex){--..}: [] __lock_acquire+0xd49/0x1190 [] lock_acquire+0x91/0xc0 [] __mutex_lock_common+0xb9/0x430 [] mutex_lock_nested+0x3f/0x50 [] inotify_find_update_watch+0x53/0xe0 [] sys_inotify_add_watch+0x115/0x1d0 [] system_call_fastpath+0x16/0x1b [] 0xffffffffffffffff -> #1 (&inode->inotify_mutex){--..}: [] __lock_acquire+0xd49/0x1190 [] lock_acquire+0x91/0xc0 [] __mutex_lock_common+0xb9/0x430 [] mutex_lock_nested+0x3f/0x50 [] inotify_inode_queue_event+0x50/0x110 [] inotify_dentry_parent_queue_event+0x91/0xb0 [] __fput+0x7f/0x1f0 [] fput+0x25/0x30 [] remove_vma+0x4f/0x90 [] do_munmap+0x2e9/0x330 [] sys_munmap+0x55/0x80 [] system_call_fastpath+0x16/0x1b [] 0xffffffffffffffff -> #0 (&mm->mmap_sem){----}: [] __lock_acquire+0xe10/0x1190 [] lock_acquire+0x91/0xc0 [] down_read+0x4b/0x80 [] do_page_fault+0x12f/0xae0 [] error_exit+0x0/0xa9 [] vfs_read+0xc8/0x170 [] sys_read+0x55/0x90 [] system_call_fastpath+0x16/0x1b [] 0xffffffffffffffff other info that might help us debug this: 1 lock held by gnome-panel/4944: #0: (&dev->ev_mutex){--..}, at: [] inotify_read+0xe3/0x200 stack backtrace: Pid: 4944, comm: gnome-panel Not tainted 2.6.27-rc5-233c-debug #2 Call Trace: [] print_circular_bug_tail+0xa7/0xf0 [] __lock_acquire+0xe10/0x1190 [] lock_acquire+0x91/0xc0 [] ? do_page_fault+0x12f/0xae0 [] down_read+0x4b/0x80 [] ? do_page_fault+0x12f/0xae0 [] ? search_exception_tables+0x2a/0x50 [] do_page_fault+0x12f/0xae0 [] ? trace_hardirqs_off_caller+0x21/0xc0 [] ? native_sched_clock+0x90/0xb0 [] ? __lock_acquire+0x2f9/0x1190 [] ? mark_held_locks+0x56/0xa0 [] ? trace_hardirqs_on+0xd/0x10 [] ? trace_hardirqs_on_caller+0x149/0x1b0 [] error_exit+0x0/0xa9 [] ? copy_user_generic_string+0x2d/0x40 [] ? inotify_read+0x17d/0x200 [] ? autoremove_wake_function+0x0/0x40 [] ? trace_hardirqs_on+0xd/0x10 [] vfs_read+0xc8/0x170 [] sys_read+0x55/0x90 [] system_call_fastpath+0x16/0x1b -- Daniel J Blueman