Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753534AbZFURdj (ORCPT ); Sun, 21 Jun 2009 13:33:39 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752131AbZFURdb (ORCPT ); Sun, 21 Jun 2009 13:33:31 -0400 Received: from mx2.redhat.com ([66.187.237.31]:52613 "EHLO mx2.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752054AbZFURda (ORCPT ); Sun, 21 Jun 2009 13:33:30 -0400 Date: Sun, 21 Jun 2009 13:33:31 -0400 From: Dave Jones To: Linux Kernel Subject: 2.6.30 fb/mmap lockdep report. Message-ID: <20090621173330.GA26093@redhat.com> Mail-Followup-To: Dave Jones , Linux Kernel MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.19 (2009-01-05) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 5377 Lines: 133 ======================================================= [ INFO: possible circular locking dependency detected ] 2.6.30-6.fc12.i686.PAE #1 ------------------------------------------------------- plymouthd/36 is trying to acquire lock: (&fb_info->lock){+.+.+.}, at: [] fb_mmap+0x94/0x17d but task is already holding lock: (&mm->mmap_sem){++++++}, at: [] sys_mmap2+0x72/0xb9 which lock already depends on the new lock. the existing dependency chain (in reverse order) is: -> #3 (&mm->mmap_sem){++++++}: [] __lock_acquire+0x996/0xb08 [] lock_acquire+0xb7/0xeb [] might_fault+0x73/0xa4 [] copy_to_user+0x41/0x12b [] filldir+0x90/0xdc [] sysfs_readdir+0x11a/0x161 [] vfs_readdir+0x7b/0xb8 [] sys_getdents+0x74/0xc9 [] sysenter_do_call+0x12/0x38 [] 0xffffffff -> #2 (sysfs_mutex){+.+.+.}: [] __lock_acquire+0x996/0xb08 [] lock_acquire+0xb7/0xeb [] __mutex_lock_common+0x43/0x32b [] mutex_lock_nested+0x41/0x5a [] sysfs_addrm_start+0x34/0xb2 [] create_dir+0x50/0x93 [] sysfs_create_dir+0x3d/0x5e [] kobject_add_internal+0xfa/0x1d1 [] kobject_add_varg+0x41/0x5e [] kobject_add+0x51/0x68 [] device_add+0xec/0x4aa [] device_register+0x27/0x3c [] device_create_vargs+0xac/0xe5 [] device_create+0x2e/0x41 [] register_con_driver+0xbb/0x126 [] take_over_console+0x2f/0x61 [] fbcon_takeover+0x6f/0xb3 [] fbcon_event_notify+0x296/0x60e [] notifier_call_chain+0x5d/0x95 [] __blocking_notifier_call_chain+0x52/0x78 [] blocking_notifier_call_chain+0x21/0x37 [] fb_notifier_call_chain+0x25/0x38 [] register_framebuffer+0x1f6/0x218 [] vesafb_probe+0x5bc/0x638 [] platform_drv_probe+0x20/0x33 [] driver_probe_device+0xca/0x1d9 [] __device_attach+0x3d/0x53 [] bus_for_each_drv+0x55/0x90 [] device_attach+0x5a/0x7f [] bus_attach_device+0x34/0x70 [] device_add+0x33c/0x4aa [] platform_device_add+0xfa/0x169 [] vesafb_init+0x1e0/0x214 [] do_one_initcall+0x75/0x193 [] kernel_init+0x189/0x1eb [] kernel_thread_helper+0x7/0x10 [] 0xffffffff -> #1 ((fb_notifier_list).rwsem){.+.+.+}: [] __lock_acquire+0x996/0xb08 [] lock_acquire+0xb7/0xeb [] down_read+0x45/0x93 [] __blocking_notifier_call_chain+0x40/0x78 [] blocking_notifier_call_chain+0x21/0x37 [] fb_notifier_call_chain+0x25/0x38 [] register_framebuffer+0x1f6/0x218 [] vesafb_probe+0x5bc/0x638 [] platform_drv_probe+0x20/0x33 [] driver_probe_device+0xca/0x1d9 [] __device_attach+0x3d/0x53 [] bus_for_each_drv+0x55/0x90 [] device_attach+0x5a/0x7f [] bus_attach_device+0x34/0x70 [] device_add+0x33c/0x4aa [] platform_device_add+0xfa/0x169 [] vesafb_init+0x1e0/0x214 [] do_one_initcall+0x75/0x193 [] kernel_init+0x189/0x1eb [] kernel_thread_helper+0x7/0x10 [] 0xffffffff -> #0 (&fb_info->lock){+.+.+.}: [] __lock_acquire+0x89d/0xb08 [] lock_acquire+0xb7/0xeb [] __mutex_lock_common+0x43/0x32b [] mutex_lock_nested+0x41/0x5a [] fb_mmap+0x94/0x17d [] mmap_region+0x272/0x404 [] do_mmap_pgoff+0x273/0x2d6 [] sys_mmap2+0x86/0xb9 [] sysenter_do_call+0x12/0x38 [] 0xffffffff other info that might help us debug this: 1 lock held by plymouthd/36: #0: (&mm->mmap_sem){++++++}, at: [] sys_mmap2+0x72/0xb9 stack backtrace: Pid: 36, comm: plymouthd Not tainted 2.6.30-6.fc12.i686.PAE #1 Call Trace: [] ? printk+0x22/0x35 [] print_circular_bug_tail+0x68/0x84 [] __lock_acquire+0x89d/0xb08 [] lock_acquire+0xb7/0xeb [] ? fb_mmap+0x94/0x17d [] ? fb_mmap+0x94/0x17d [] __mutex_lock_common+0x43/0x32b [] ? fb_mmap+0x94/0x17d [] ? fb_mmap+0x94/0x17d [] ? mark_held_locks+0x4e/0x78 [] mutex_lock_nested+0x41/0x5a [] ? fb_mmap+0x94/0x17d [] fb_mmap+0x94/0x17d [] mmap_region+0x272/0x404 [] do_mmap_pgoff+0x273/0x2d6 [] sys_mmap2+0x86/0xb9 [] sysenter_do_call+0x12/0x38 -- 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/