Bug 522990 - possible circular locking dependency detected; &mm->mmap_sem
Summary: possible circular locking dependency detected; &mm->mmap_sem
Keywords:
Status: CLOSED DUPLICATE of bug 517624
Alias: None
Product: Fedora
Classification: Fedora
Component: xorg-x11-drv-nouveau
Version: rawhide
Hardware: i686
OS: Linux
low
medium
Target Milestone: ---
Assignee: Ben Skeggs
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-09-13 02:24 UTC by John Reiser
Modified: 2009-09-30 20:00 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-09-30 20:00:48 UTC


Attachments (Terms of Use)

Description John Reiser 2009-09-13 02:24:30 UTC
Description of problem: shortly after suspend+resume, /var/log/messages has an INFO about possible circular locking dependency


Version-Release number of selected component (if applicable):
kernel-2.6.31-0.219.rc9.git2.fc12.i686    testday-20090909-i686.iso
xorg-x11-drv-nouveau-0.0.15-8.20090904git2b5ec6a.fc12.i686
xorg-x11-server-common-1.6.99.900-1.fc12.i686

How reproducible:


Steps to Reproduce:
1. boot testday-20090909-i686.iso; run suspend+resume test
2.
3.
  
Actual results:
Sep 13 01:51:42 localhost kernel: =======================================================
Sep 13 01:51:42 localhost kernel: [ INFO: possible circular locking dependency detected ]
Sep 13 01:51:42 localhost kernel: 2.6.31-0.219.rc9.git2.fc12.i686 #1
Sep 13 01:51:42 localhost kernel: -------------------------------------------------------
Sep 13 01:51:42 localhost kernel: Xorg/1511 is trying to acquire lock:
Sep 13 01:51:42 localhost kernel: (&mm->mmap_sem){++++++}, at: [<c04d7690>] might_fault+0x56/0xa4
Sep 13 01:51:42 localhost kernel:
Sep 13 01:51:42 localhost kernel: but task is already holding lock:
Sep 13 01:51:42 localhost kernel: (&dev->struct_mutex){+.+.+.}, at: [<f7d6c7f8>] nouveau_gem_ioctl_pushbuf_call+0x15e/0x55b [nouveau]
Sep 13 01:51:42 localhost kernel:
Sep 13 01:51:42 localhost kernel: which lock already depends on the new lock.
Sep 13 01:51:42 localhost kernel:
Sep 13 01:51:42 localhost kernel:
Sep 13 01:51:42 localhost kernel: the existing dependency chain (in reverse order) is:
Sep 13 01:51:42 localhost kernel:
Sep 13 01:51:42 localhost kernel: -> #2 (&dev->struct_mutex){+.+.+.}:
Sep 13 01:51:42 localhost kernel:       [<c047111f>] __lock_acquire+0x9b3/0xb25
Sep 13 01:51:42 localhost kernel:       [<c0471348>] lock_acquire+0xb7/0xeb
Sep 13 01:51:42 localhost kernel:       [<c0824ef4>] __mutex_lock_common+0x43/0x32b
Sep 13 01:51:42 localhost kernel:       [<c08252cf>] mutex_lock_nested+0x41/0x5a
Sep 13 01:51:42 localhost kernel:       [<f7c84ecc>] drm_vm_open+0x38/0x5c [drm]
Sep 13 01:51:42 localhost kernel:       [<c0442ba6>] dup_mm+0x265/0x34b
Sep 13 01:51:42 localhost kernel:       [<c044372b>] copy_process+0xa4b/0x111d
Sep 13 01:51:42 localhost kernel:       [<c0443f34>] do_fork+0x137/0x2d6
Sep 13 01:51:42 localhost kernel:       [<c0402343>] sys_clone+0x35/0x4d
Sep 13 01:51:42 localhost kernel:       [<c0403a50>] syscall_call+0x7/0xb
Sep 13 01:51:42 localhost kernel:       [<ffffffff>] 0xffffffff
Sep 13 01:51:42 localhost kernel:
Sep 13 01:51:42 localhost kernel: -> #1 (&mm->mmap_sem/1){+.+.+.}:
Sep 13 01:51:42 localhost kernel:       [<c047111f>] __lock_acquire+0x9b3/0xb25
Sep 13 01:51:42 localhost kernel:       [<c0471348>] lock_acquire+0xb7/0xeb
Sep 13 01:51:42 localhost kernel:       [<c0461587>] down_write_nested+0x4d/0x9c
Sep 13 01:51:42 localhost kernel:       [<c04429f9>] dup_mm+0xb8/0x34b
Sep 13 01:51:42 localhost kernel:       [<c044372b>] copy_process+0xa4b/0x111d
Sep 13 01:51:42 localhost kernel:       [<c0443f34>] do_fork+0x137/0x2d6
Sep 13 01:51:42 localhost kernel:       [<c0402343>] sys_clone+0x35/0x4d
Sep 13 01:51:42 localhost kernel:       [<c0403a50>] syscall_call+0x7/0xb
Sep 13 01:51:42 localhost kernel:       [<ffffffff>] 0xffffffff
Sep 13 01:51:42 localhost kernel:
Sep 13 01:51:42 localhost kernel: -> #0 (&mm->mmap_sem){++++++}:
Sep 13 01:51:42 localhost kernel:       [<c0471026>] __lock_acquire+0x8ba/0xb25
Sep 13 01:51:42 localhost kernel:       [<c0471348>] lock_acquire+0xb7/0xeb
Sep 13 01:51:42 localhost kernel:       [<c04d76ad>] might_fault+0x73/0xa4
Sep 13 01:51:42 localhost kernel:       [<c06016ec>] copy_to_user+0x41/0x12b
Sep 13 01:51:42 localhost kernel:       [<f7d6c02b>] nouveau_gem_pushbuf_validate+0x31e/0x388 [nouveau]
Sep 13 01:51:42 localhost kernel:       [<f7d6c84e>] nouveau_gem_ioctl_pushbuf_call+0x1b4/0x55b [nouveau]
Sep 13 01:51:42 localhost kernel:       [<f7c7ffee>] drm_ioctl+0x21a/0x2c4 [drm]
Sep 13 01:51:42 localhost kernel:       [<c0505c33>] vfs_ioctl+0x68/0x93
Sep 13 01:51:42 localhost kernel:       [<c05061da>] do_vfs_ioctl+0x4b2/0x503
Sep 13 01:51:42 localhost kernel:       [<c0506280>] sys_ioctl+0x55/0x86
Sep 13 01:51:42 localhost kernel:       [<c0403a50>] syscall_call+0x7/0xb
Sep 13 01:51:42 localhost kernel:       [<ffffffff>] 0xffffffff
Sep 13 01:51:42 localhost kernel:
Sep 13 01:51:42 localhost kernel: other info that might help us debug this:
Sep 13 01:51:42 localhost kernel:
Sep 13 01:51:42 localhost kernel: 1 lock held by Xorg/1511:
Sep 13 01:51:42 localhost kernel: #0:  (&dev->struct_mutex){+.+.+.}, at: [<f7d6c7f8>] nouveau_gem_ioctl_pushbuf_call+0x15e/0x55b [nouveau]
Sep 13 01:51:42 localhost kernel:
Sep 13 01:51:42 localhost kernel: stack backtrace:
Sep 13 01:51:42 localhost kernel: Pid: 1511, comm: Xorg Tainted: G        W  2.6.31-0.219.rc9.git2.fc12.i686 #1
Sep 13 01:51:42 localhost kernel: Call Trace:
Sep 13 01:51:42 localhost kernel: [<c0823a86>] ? printk+0x22/0x3c
Sep 13 01:51:42 localhost kernel: [<c0470454>] print_circular_bug_tail+0x68/0x84
Sep 13 01:51:42 localhost kernel: [<c0471026>] __lock_acquire+0x8ba/0xb25
Sep 13 01:51:42 localhost kernel: [<c0471348>] lock_acquire+0xb7/0xeb
Sep 13 01:51:42 localhost kernel: [<c04d7690>] ? might_fault+0x56/0xa4
Sep 13 01:51:42 localhost kernel: [<c04d7690>] ? might_fault+0x56/0xa4
Sep 13 01:51:42 localhost kernel: [<c04d76ad>] might_fault+0x73/0xa4
Sep 13 01:51:42 localhost kernel: [<c04d7690>] ? might_fault+0x56/0xa4
Sep 13 01:51:42 localhost kernel: [<c06016ec>] copy_to_user+0x41/0x12b
Sep 13 01:51:42 localhost kernel: [<f7d6c02b>] nouveau_gem_pushbuf_validate+0x31e/0x388 [nouveau]
Sep 13 01:51:42 localhost kernel: [<c046fdcd>] ? trace_hardirqs_on+0x19/0x2c
Sep 13 01:51:42 localhost kernel: [<f7d6c84e>] nouveau_gem_ioctl_pushbuf_call+0x1b4/0x55b [nouveau]
Sep 13 01:51:42 localhost kernel: [<f7c7ffee>] drm_ioctl+0x21a/0x2c4 [drm]
Sep 13 01:51:42 localhost kernel: [<f7d6c69a>] ? nouveau_gem_ioctl_pushbuf_call+0x0/0x55b [nouveau]
Sep 13 01:51:42 localhost kernel: [<c05bddf9>] ? inode_has_perm+0x69/0x84
Sep 13 01:51:42 localhost kernel: [<c040949d>] ? sched_clock+0x9/0xd
Sep 13 01:51:42 localhost kernel: [<c0505c33>] vfs_ioctl+0x68/0x93
Sep 13 01:51:42 localhost kernel: [<c05061da>] do_vfs_ioctl+0x4b2/0x503
Sep 13 01:51:42 localhost kernel: [<c05be110>] ? selinux_file_ioctl+0x51/0x66
Sep 13 01:51:42 localhost kernel: [<c0506280>] sys_ioctl+0x55/0x86
Sep 13 01:51:42 localhost kernel: [<c040c28f>] ? syscall_trace_enter+0xea/0x10f
Sep 13 01:51:42 localhost kernel: [<c0403a50>] syscall_call+0x7/0xb
Sep 13 01:51:42 localhost kernel: done.


Expected results: no such INFO "complaint"


Additional info:

Comment 1 Orion Poplawski 2009-09-30 20:00:48 UTC

*** This bug has been marked as a duplicate of bug 517624 ***


Note You need to log in before you can comment on or make changes to this bug.