All of lore.kernel.org
 help / color / mirror / Atom feed
From: bugzilla-daemon@bugzilla.kernel.org
To: dri-devel@lists.freedesktop.org
Subject: [Bug 52231] New: possible circular locking dependency detected in radeon driver
Date: Thu,  3 Jan 2013 13:04:12 +0000 (UTC)	[thread overview]
Message-ID: <bug-52231-2300@https.bugzilla.kernel.org/> (raw)

https://bugzilla.kernel.org/show_bug.cgi?id=52231

           Summary: possible circular locking dependency detected in
                    radeon driver
           Product: Drivers
           Version: 2.5
    Kernel Version: 3.8-rc2
          Platform: All
        OS/Version: Linux
              Tree: Mainline
            Status: NEW
          Severity: normal
          Priority: P1
         Component: Video(DRI - non Intel)
        AssignedTo: drivers_video-dri@kernel-bugs.osdl.org
        ReportedBy: casteyde.christian@free.fr
        Regression: Yes


Kernel 3.8-rc2
Slackware64 14
Core i7, 6 GB RAM, 64 bit mode

Since kernel 3.8-rc2 with kmemcheck and lockdep hacking options turned on, I
get the following lockdep warning:

EXT4-fs (sda3): re-mounted. Opts: discard,commit=0

======================================================
[ INFO: possible circular locking dependency detected ]
3.8.0-rc2 #21 Not tainted
-------------------------------------------------------
99video/2835 is trying to acquire lock:
 ((fb_notifier_list).rwsem){.+.+.+}, at: [<ffffffff8109f2f4>]
__blocking_notifier_call_chain+0x54/0xd0

but task is already holding lock:
 (console_lock){+.+.+.}, at: [<ffffffff81344a65>] store_fbstate+0x55/0x80

which lock already depends on the new lock.


the existing dependency chain (in reverse order) is:

-> #1 (console_lock){+.+.+.}:
       [<ffffffff810c9eaa>] lock_acquire+0x5a/0x70
       [<ffffffff810756e7>] console_lock+0x57/0x60
       [<ffffffff813a1874>] register_con_driver+0x34/0x140
       [<ffffffff813a2fe9>] take_over_console+0x29/0x60
       [<ffffffff8134a90b>] fbcon_takeover+0x5b/0xb0
       [<ffffffff8134f7ad>] fbcon_event_notify+0x72d/0x830
       [<ffffffff8109f00e>] notifier_call_chain+0x5e/0x150
       [<ffffffff8109f30d>] __blocking_notifier_call_chain+0x6d/0xd0
       [<ffffffff8109f381>] blocking_notifier_call_chain+0x11/0x20
       [<ffffffff81340df6>] fb_notifier_call_chain+0x16/0x20
       [<ffffffff8134301d>] register_framebuffer+0x1bd/0x2f0
       [<ffffffff813adf43>] drm_fb_helper_single_fb_probe+0x1d3/0x2f0
       [<ffffffff813ae231>] drm_fb_helper_initial_config+0x1d1/0x240
       [<ffffffff81417b1a>] radeon_fbdev_init+0xba/0x110
       [<ffffffff81412a01>] radeon_modeset_init+0x501/0xb60
       [<ffffffff813f00d0>] radeon_driver_load_kms+0xe0/0x150
       [<ffffffff813bb5ce>] drm_get_pci_dev+0x17e/0x2b0
       [<ffffffff813d643a>] radeon_pci_probe+0xaa/0xe0
       [<ffffffff8132f196>] local_pci_probe+0x46/0x80
       [<ffffffff8132f7c1>] pci_device_probe+0x101/0x110
       [<ffffffff8146cb86>] driver_probe_device+0x76/0x220
       [<ffffffff8146cdd3>] __driver_attach+0xa3/0xb0
       [<ffffffff8146ae4d>] bus_for_each_dev+0x4d/0x90
       [<ffffffff8146c6d9>] driver_attach+0x19/0x20
       [<ffffffff8146c2a0>] bus_add_driver+0x1a0/0x270
       [<ffffffff8146d442>] driver_register+0x72/0x170
       [<ffffffff8132f89f>] __pci_register_driver+0x5f/0x70
       [<ffffffff813bb815>] drm_pci_init+0x115/0x130
       [<ffffffff820a7460>] radeon_init+0xe7/0xe9
       [<ffffffff810002da>] do_one_initcall+0x11a/0x170
       [<ffffffff81811aec>] kernel_init+0x11c/0x290
       [<ffffffff8182ffec>] ret_from_fork+0x7c/0xb0

-> #0 ((fb_notifier_list).rwsem){.+.+.+}:
       [<ffffffff810c96f0>] __lock_acquire+0x1a20/0x1ca0
       [<ffffffff810c9eaa>] lock_acquire+0x5a/0x70
       [<ffffffff8182ca39>] down_read+0x39/0x8c
       [<ffffffff8109f2f4>] __blocking_notifier_call_chain+0x54/0xd0
       [<ffffffff8109f381>] blocking_notifier_call_chain+0x11/0x20
       [<ffffffff81340df6>] fb_notifier_call_chain+0x16/0x20
       [<ffffffff81341516>] fb_set_suspend+0x46/0x60
       [<ffffffff81344a70>] store_fbstate+0x60/0x80
       [<ffffffff81468493>] dev_attr_store+0x13/0x20
       [<ffffffff811b813b>] sysfs_write_file+0xdb/0x150
       [<ffffffff81148b86>] vfs_write+0xa6/0x160
       [<ffffffff81148e90>] sys_write+0x50/0xa0
       [<ffffffff81830092>] system_call_fastpath+0x16/0x1b

other info that might help us debug this:

 Possible unsafe locking scenario:

       CPU0                    CPU1
       ----                    ----
  lock(console_lock);
                               lock((fb_notifier_list).rwsem);
                               lock(console_lock);
  lock((fb_notifier_list).rwsem);

 *** DEADLOCK ***

4 locks held by 99video/2835:
 #0:  (&buffer->mutex){+.+.+.}, at: [<ffffffff811b80a3>]
sysfs_write_file+0x43/0x150
 #1:  (s_active#124){.+.+.+}, at: [<ffffffff811b8123>]
sysfs_write_file+0xc3/0x150
 #2:  (&fb_info->lock){+.+.+.}, at: [<ffffffff813412c1>] lock_fb_info+0x21/0x60
 #3:  (console_lock){+.+.+.}, at: [<ffffffff81344a65>] store_fbstate+0x55/0x80

stack backtrace:
Pid: 2835, comm: 99video Not tainted 3.8.0-rc2 #21
Call Trace:
 [<ffffffff81823b11>] print_circular_bug+0x28e/0x29f
 [<ffffffff810c96f0>] __lock_acquire+0x1a20/0x1ca0
 [<ffffffff810c9eaa>] lock_acquire+0x5a/0x70
 [<ffffffff8109f2f4>] ? __blocking_notifier_call_chain+0x54/0xd0
 [<ffffffff810c4e0f>] ? __lock_is_held+0x5f/0x90
 [<ffffffff8182ca39>] down_read+0x39/0x8c
 [<ffffffff8109f2f4>] ? __blocking_notifier_call_chain+0x54/0xd0
 [<ffffffff8109f2f4>] __blocking_notifier_call_chain+0x54/0xd0
 [<ffffffff8109f2f4>] __blocking_notifier_call_chain+0x54/0xd0
 [<ffffffff8109f381>] blocking_notifier_call_chain+0x11/0x20
 [<ffffffff81340df6>] fb_notifier_call_chain+0x16/0x20
 [<ffffffff81341516>] fb_set_suspend+0x46/0x60
 [<ffffffff810756e7>] ? console_lock+0x57/0x60
 [<ffffffff81344a65>] ? store_fbstate+0x55/0x80
 [<ffffffff81344a70>] store_fbstate+0x60/0x80
 [<ffffffff81468493>] dev_attr_store+0x13/0x20
 [<ffffffff811b813b>] sysfs_write_file+0xdb/0x150
 [<ffffffff81148b86>] vfs_write+0xa6/0x160
 [<ffffffff81148e90>] sys_write+0x50/0xa0
 [<ffffffff81830092>] system_call_fastpath+0x16/0x1b
PM: Syncing filesystems ... done.
WARNING: kmemcheck: Caught 16-bit read from uninitialized memory
(ffff8801c52bbc20)
010000000000000001000000000000000000000000000000b0bb2bc50188ffff
 u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u
 ^
Pid: 2256, comm: X Not tainted 3.8.0-rc2 #21 Acer Aspire 7750G/JE70_HR
RIP: 0010:[<ffffffff813ac091>]  [<ffffffff813ac091>]
drm_fb_helper_setcmap+0x111/0x400
RSP: 0018:ffff8801c0c35978  EFLAGS: 00010206
RAX: ffff8801c52bbc00 RBX: ffff8801c476e800 RCX: 0000000000000000
RDX: 000000000000000f RSI: ffff8801c52bb850 RDI: 00000000000000ff
RBP: ffff8801c0c35a48 R08: 00000000001d5300 R09: 0000000000ffffff
R10: 0000000000000000 R11: 000000000000ffff R12: 0000000000000000
R13: 0000000000000010 R14: 0000000000000010 R15: ffff8801c52bb800
FS:  00007f34900ed8c0(0000) GS:ffff8801c7e00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: ffff8801c644bf10 CR3: 00000001c30d3000 CR4: 00000000000407f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff4ff0 DR7: 0000000000000400
 [<ffffffff81344375>] fb_set_cmap+0x65/0x140
 [<ffffffff81341dff>] fb_set_var+0x1cf/0x480
 [<ffffffff8134be21>] fbcon_blank+0x1e1/0x2e0
 [<ffffffff813a3f79>] do_unblank_screen+0xa9/0x1d0
 [<ffffffff81399744>] complete_change_console+0x64/0xf0
 [<ffffffff8139aa32>] vt_ioctl+0x1262/0x1350
 [<ffffffff8138fd98>] tty_ioctl+0x2c8/0xd10
 [<ffffffff8115aae7>] do_vfs_ioctl+0x97/0x5a0
 [<ffffffff8115b03b>] sys_ioctl+0x4b/0x90
 [<ffffffff81830092>] system_call_fastpath+0x16/0x1b
 [<ffffffffffffffff>] 0xffffffffffffffff
WARNING: kmemcheck: Caught 16-bit read from uninitialized memory
(ffff8801c52bbe20)
ea00000077000000260000000b00000002000000040000000100000001000000
 u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u
 ^
Pid: 2256, comm: X Not tainted 3.8.0-rc2 #21 Acer Aspire 7750G/JE70_HR
RIP: 0010:[<ffffffff813ac0af>]  [<ffffffff813ac0af>]
drm_fb_helper_setcmap+0x12f/0x400
RSP: 0018:ffff8801c0c35978  EFLAGS: 00010246
RAX: ffff8801c52bbe00 RBX: ffff8801c476e800 RCX: 0000000000000000
RDX: 0000000000000010 RSI: ffff8801c52bb850 RDI: 00000000000000ff
RBP: ffff8801c0c35a48 R08: 00000000001d5300 R09: 0000000000ffffff
R10: 0000000000000000 R11: 0000000000000001 R12: 0000000000000010
R13: 0000000000000010 R14: 0000000000000010 R15: ffff8801c52bb800
FS:  00007f34900ed8c0(0000) GS:ffff8801c7e00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: ffff8801c644bf10 CR3: 00000001c30d3000 CR4: 00000000000407f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff4ff0 DR7: 0000000000000400
 [<ffffffff81344375>] fb_set_cmap+0x65/0x140
 [<ffffffff81341dff>] fb_set_var+0x1cf/0x480
 [<ffffffff8134be21>] fbcon_blank+0x1e1/0x2e0
 [<ffffffff813a3f79>] do_unblank_screen+0xa9/0x1d0
 [<ffffffff81399744>] complete_change_console+0x64/0xf0
 [<ffffffff8139aa32>] vt_ioctl+0x1262/0x1350
 [<ffffffff8138fd98>] tty_ioctl+0x2c8/0xd10
 [<ffffffff8115aae7>] do_vfs_ioctl+0x97/0x5a0
 [<ffffffff8115b03b>] sys_ioctl+0x4b/0x90
 [<ffffffff81830092>] system_call_fastpath+0x16/0x1b
 [<ffffffffffffffff>] 0xffffffffffffffff
WARNING: kmemcheck: Caught 16-bit read from uninitialized memory
(ffff8801c4778020)
000000000000000010fa0881ffffffff00000000000000000000000000000000
 u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u u
 ^
Pid: 2256, comm: X Not tainted 3.8.0-rc2 #21 Acer Aspire 7750G/JE70_HR
RIP: 0010:[<ffffffff813ac0b8>]  [<ffffffff813ac0b8>]
drm_fb_helper_setcmap+0x138/0x400
RSP: 0018:ffff8801c0c35978  EFLAGS: 00010246
RAX: ffff8801c4778000 RBX: ffff8801c476e800 RCX: 0000000000000000
RDX: 0000000000000010 RSI: ffff8801c52bb850 RDI: 00000000000000ff
RBP: ffff8801c0c35a48 R08: 00000000001d5300 R09: 00000000000000ea
R10: 0000000000000000 R11: 0000000000000001 R12: 0000000000000010
R13: 0000000000000010 R14: 0000000000000010 R15: ffff8801c52bb800
FS:  00007f34900ed8c0(0000) GS:ffff8801c7e00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: ffff8801c644bf10 CR3: 00000001c30d3000 CR4: 00000000000407f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff4ff0 DR7: 0000000000000400
 [<ffffffff81344375>] fb_set_cmap+0x65/0x140
 [<ffffffff81341dff>] fb_set_var+0x1cf/0x480
 [<ffffffff8134be21>] fbcon_blank+0x1e1/0x2e0
 [<ffffffff813a3f79>] do_unblank_screen+0xa9/0x1d0
 [<ffffffff81399744>] complete_change_console+0x64/0xf0
 [<ffffffff8139aa32>] vt_ioctl+0x1262/0x1350
 [<ffffffff8138fd98>] tty_ioctl+0x2c8/0xd10
 [<ffffffff8115aae7>] do_vfs_ioctl+0x97/0x5a0
 [<ffffffff8115b03b>] sys_ioctl+0x4b/0x90
 [<ffffffff81830092>] system_call_fastpath+0x16/0x1b

etc.
(uninitialized read is already reported in another bugzilla entry).

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.

             reply	other threads:[~2013-01-03 13:04 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-03 13:04 bugzilla-daemon [this message]
2013-01-03 13:08 ` [Bug 52231] possible circular locking dependency detected in radeon driver bugzilla-daemon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-52231-2300@https.bugzilla.kernel.org/ \
    --to=bugzilla-daemon@bugzilla.kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.