From: Francisco Jerez <currojerez@riseup.net>
To: Johannes Berg <johannes@sipsolutions.net>
Cc: Ben Skeggs <bskeggs@redhat.com>,
dri-devel <dri-devel@lists.freedesktop.org>
Subject: Re: nouveau lockdep warning
Date: Wed, 01 Sep 2010 14:09:14 +0200 [thread overview]
Message-ID: <87r5hd3bth.fsf@riseup.net> (raw)
In-Reply-To: <1283325974.4131.4.camel@jlt3.sipsolutions.net> (Johannes Berg's message of "Wed, 01 Sep 2010 09:26:14 +0200")
[-- Attachment #1.1.1: Type: text/plain, Size: 28379 bytes --]
Johannes Berg <johannes@sipsolutions.net> writes:
> Francisco,
>
> The patch you pointed me works, but now, although it's probably not due
> to that patch, I get a lockdep warning:
>
> [ 75.428119] [drm] nouveau 0000:02:00.0: nouveau_channel_free: freeing fifo 2
> [ 75.430015]
> [ 75.430015] ======================================================
> [ 75.430015] [ INFO: HARDIRQ-safe -> HARDIRQ-unsafe lock order detected ]
> [ 75.430015] 2.6.36-rc3-wl-47417-g8164729-dirty #183
> [ 75.430015] ------------------------------------------------------
> [ 75.430015] Xorg/3109 [HC0[0]:SC0[0]:HE0:SE1] is trying to acquire:
> [ 75.430015] (&(&mm->unused_lock)->rlock){+.+...}, at: [<ffffffffa075f303>] drm_mm_put_block+0x93/0x190 [drm]
> [ 75.430015]
> [ 75.430015] and this task is already holding:
> [ 75.430015] (&(&dev_priv->context_switch_lock)->rlock){-.....}, at: [<ffffffffa07ccbc9>] nouveau_channel_free+0xf9/0x2b0 [nouveau]
> [ 75.430015] which would create a new lock dependency:
> [ 75.430015] (&(&dev_priv->context_switch_lock)->rlock){-.....} -> (&(&mm->unused_lock)->rlock){+.+...}
> [ 75.430015]
> [ 75.430015] but this new dependency connects a HARDIRQ-irq-safe lock:
> [ 75.430015] [drm] nouveau 0000:02:00.0: GPU lockup - switching to software fbcon
> [ 75.430015] (&(&dev_priv->context_switch_lock)->rlock){-.....}
> [ 75.430015] ... which became HARDIRQ-irq-safe at:
> [ 75.430015] [<ffffffff81081a5d>] mark_irqflags+0x17d/0x190
> [ 75.430015] [<ffffffff8108580c>] __lock_acquire+0x57c/0x9d0
> [ 75.430015] [<ffffffff81085d02>] lock_acquire+0xa2/0x1d0
> [ 75.430015] [<ffffffff814965c2>] _raw_spin_lock_irqsave+0x52/0x90
> [ 75.430015] [<ffffffffa07d518f>] nouveau_irq_handler+0x6f/0x1b0 [nouveau]
> [ 75.430015] [<ffffffff810a5271>] handle_IRQ_event+0x81/0x2e0
> [ 75.430015] [<ffffffff810a7d4c>] handle_fasteoi_irq+0x7c/0x100
> [ 75.430015] [<ffffffff81005122>] handle_irq+0x22/0x30
> [ 75.430015] [<ffffffff810045c3>] do_IRQ+0x73/0xf0
> [ 75.430015] [<ffffffff81497713>] ret_from_intr+0x0/0xf
> [ 75.430015] [<ffffffff813274f1>] dev_set_name+0x41/0x50
> [ 75.430015] [<ffffffff812aef0c>] backlight_device_register+0xcc/0x2d0
> [ 75.430015] [<ffffffffa0838c07>] nouveau_nv50_backlight_init+0x87/0xf0 [nouveau]
> [ 75.430015] [<ffffffffa0838c9d>] nouveau_backlight_init+0x2d/0x50 [nouveau]
> [ 75.430015] [<ffffffffa07cc243>] nouveau_card_init+0x263/0x300 [nouveau]
> [ 75.430015] [<ffffffffa07cc631>] nouveau_load+0x351/0x660 [nouveau]
> [ 75.430015] [<ffffffffa075c1a3>] drm_get_pci_dev+0x183/0x3a0 [drm]
> [ 75.430015] [<ffffffffa08391ba>] nouveau_pci_probe+0x15/0x17 [nouveau]
> [ 75.430015] [<ffffffff8128e74f>] local_pci_probe+0x5f/0xd0
> [ 75.430015] [<ffffffff8128f538>] pci_device_probe+0x88/0xb0
> [ 75.430015] [<ffffffff8132b6c8>] really_probe+0x68/0x190
> [ 75.430015] [<ffffffff8132b835>] driver_probe_device+0x45/0x70
> [ 75.430015] [<ffffffff8132b8fb>] __driver_attach+0x9b/0xa0
> [ 75.430015] [<ffffffff8132ac5c>] bus_for_each_dev+0x6c/0xa0
> [ 75.430015] [<ffffffff8132b51e>] driver_attach+0x1e/0x20
> [ 75.430015] [<ffffffff8132a2a5>] bus_add_driver+0xd5/0x370
> [ 75.430015] [<ffffffff8132bc48>] driver_register+0x78/0x140
> [ 75.430015] [<ffffffff8128f7b6>] __pci_register_driver+0x66/0xe0
> [ 75.430015] [<ffffffffa075c49f>] drm_pci_init+0xdf/0xf0 [drm]
> [ 75.430015] [<ffffffffa07533d8>] drm_init+0x58/0x70 [drm]
> [ 75.430015] [<ffffffffa085b048>] 0xffffffffa085b048
> [ 75.430015] [<ffffffff810001e3>] do_one_initcall+0x43/0x180
> [ 75.430015] [<ffffffff8109529a>] sys_init_module+0xba/0x200
> [ 75.430015] [<ffffffff810027fb>] system_call_fastpath+0x16/0x1b
> [ 75.430015]
> [ 75.430015] to a HARDIRQ-irq-unsafe lock:
> [ 75.430015] (&(&mm->unused_lock)->rlock){+.+...}
> [ 75.430015] ... which became HARDIRQ-irq-unsafe at:
> [ 75.430015] ... [<ffffffff81081a00>] mark_irqflags+0x120/0x190
> [ 75.430015] [<ffffffff8108580c>] __lock_acquire+0x57c/0x9d0
> [ 75.430015] [<ffffffff81085d02>] lock_acquire+0xa2/0x1d0
> [ 75.430015] [<ffffffff81496410>] _raw_spin_lock+0x40/0x80
> [ 75.430015] [<ffffffffa075efb5>] drm_mm_pre_get+0x25/0x1e0 [drm]
> [ 75.430015] [<ffffffffa07b123b>] ttm_bo_setup_vm+0x2b/0x140 [ttm]
> [ 75.430015] [<ffffffffa07b352d>] ttm_bo_init+0x24d/0x290 [ttm]
> [ 75.430015] [<ffffffffa07d8831>] nouveau_bo_new+0x161/0x2d0 [nouveau]
> [ 75.430015] [<ffffffffa07cdd30>] nouveau_mem_init+0x200/0x580 [nouveau]
> [ 75.430015] [<ffffffffa07cc0d6>] nouveau_card_init+0xf6/0x300 [nouveau]
> [ 75.430015] [<ffffffffa07cc631>] nouveau_load+0x351/0x660 [nouveau]
> [ 75.430015] [<ffffffffa075c1a3>] drm_get_pci_dev+0x183/0x3a0 [drm]
> [ 75.430015] [<ffffffffa08391ba>] nouveau_pci_probe+0x15/0x17 [nouveau]
> [ 75.430015] [<ffffffff8128e74f>] local_pci_probe+0x5f/0xd0
> [ 75.430015] [<ffffffff8128f538>] pci_device_probe+0x88/0xb0
> [ 75.430015] [<ffffffff8132b6c8>] really_probe+0x68/0x190
> [ 75.430015] [<ffffffff8132b835>] driver_probe_device+0x45/0x70
> [ 75.430015] [<ffffffff8132b8fb>] __driver_attach+0x9b/0xa0
> [ 75.430015] [<ffffffff8132ac5c>] bus_for_each_dev+0x6c/0xa0
> [ 75.430015] [<ffffffff8132b51e>] driver_attach+0x1e/0x20
> [ 75.430015] [<ffffffff8132a2a5>] bus_add_driver+0xd5/0x370
> [ 75.430015] [<ffffffff8132bc48>] driver_register+0x78/0x140
> [ 75.430015] [<ffffffff8128f7b6>] __pci_register_driver+0x66/0xe0
> [ 75.430015] [<ffffffffa075c49f>] drm_pci_init+0xdf/0xf0 [drm]
> [ 75.430015] [<ffffffffa07533d8>] drm_init+0x58/0x70 [drm]
> [ 75.430015] [<ffffffffa085b048>] 0xffffffffa085b048
> [ 75.430015] [<ffffffff810001e3>] do_one_initcall+0x43/0x180
> [ 75.430015] [<ffffffff8109529a>] sys_init_module+0xba/0x200
> [ 75.430015] [<ffffffff810027fb>] system_call_fastpath+0x16/0x1b
> [ 75.430015]
> [ 75.430015] other info that might help us debug this:
> [ 75.430015]
> [ 75.430015] 2 locks held by Xorg/3109:
> [ 75.430015] #0: (drm_global_mutex){+.+.+.}, at: [<ffffffffa0753041>] drm_ioctl+0x361/0x4d0 [drm]
> [ 75.430015] #1: (&(&dev_priv->context_switch_lock)->rlock){-.....}, at: [<ffffffffa07ccbc9>] nouveau_channel_free+0xf9/0x2b0 [nouveau]
> [ 75.430015]
> [ 75.430015] the dependencies between HARDIRQ-irq-safe lock and the holding lock:
> [ 75.430015] -> (&(&dev_priv->context_switch_lock)->rlock){-.....} ops: 21 {
> [ 75.430015] IN-HARDIRQ-W at:
> [ 75.430015] [<ffffffff81081a5d>] mark_irqflags+0x17d/0x190
> [ 75.430015] [<ffffffff8108580c>] __lock_acquire+0x57c/0x9d0
> [ 75.430015] [<ffffffff81085d02>] lock_acquire+0xa2/0x1d0
> [ 75.430015] [<ffffffff814965c2>] _raw_spin_lock_irqsave+0x52/0x90
> [ 75.430015] [<ffffffffa07d518f>] nouveau_irq_handler+0x6f/0x1b0 [nouveau]
> [ 75.430015] [<ffffffff810a5271>] handle_IRQ_event+0x81/0x2e0
> [ 75.430015] [<ffffffff810a7d4c>] handle_fasteoi_irq+0x7c/0x100
> [ 75.430015] [<ffffffff81005122>] handle_irq+0x22/0x30
> [ 75.430015] [<ffffffff810045c3>] do_IRQ+0x73/0xf0
> [ 75.430015] [<ffffffff81497713>] ret_from_intr+0x0/0xf
> [ 75.430015] [<ffffffff813274f1>] dev_set_name+0x41/0x50
> [ 75.430015] [<ffffffff812aef0c>] backlight_device_register+0xcc/0x2d0
> [ 75.430015] [<ffffffffa0838c07>] nouveau_nv50_backlight_init+0x87/0xf0 [nouveau]
> [ 75.430015] [<ffffffffa0838c9d>] nouveau_backlight_init+0x2d/0x50 [nouveau]
> [ 75.430015] [<ffffffffa07cc243>] nouveau_card_init+0x263/0x300 [nouveau]
> [ 75.430015] [<ffffffffa07cc631>] nouveau_load+0x351/0x660 [nouveau]
> [ 75.430015] [<ffffffffa075c1a3>] drm_get_pci_dev+0x183/0x3a0 [drm]
> [ 75.430015] [<ffffffffa08391ba>] nouveau_pci_probe+0x15/0x17 [nouveau]
> [ 75.430015] [<ffffffff8128e74f>] local_pci_probe+0x5f/0xd0
> [ 75.430015] [<ffffffff8128f538>] pci_device_probe+0x88/0xb0
> [ 75.430015] [<ffffffff8132b6c8>] really_probe+0x68/0x190
> [ 75.430015] [<ffffffff8132b835>] driver_probe_device+0x45/0x70
> [ 75.430015] [<ffffffff8132b8fb>] __driver_attach+0x9b/0xa0
> [ 75.430015] [<ffffffff8132ac5c>] bus_for_each_dev+0x6c/0xa0
> [ 75.430015] [<ffffffff8132b51e>] driver_attach+0x1e/0x20
> [ 75.430015] [<ffffffff8132a2a5>] bus_add_driver+0xd5/0x370
> [ 75.430015] [<ffffffff8132bc48>] driver_register+0x78/0x140
> [ 75.430015] [<ffffffff8128f7b6>] __pci_register_driver+0x66/0xe0
> [ 75.430015] [<ffffffffa075c49f>] drm_pci_init+0xdf/0xf0 [drm]
> [ 75.430015] [<ffffffffa07533d8>] drm_init+0x58/0x70 [drm]
> [ 75.430015] [<ffffffffa085b048>] 0xffffffffa085b048
> [ 75.430015] [<ffffffff810001e3>] do_one_initcall+0x43/0x180
> [ 75.430015] [<ffffffff8109529a>] sys_init_module+0xba/0x200
> [ 75.430015] [<ffffffff810027fb>] system_call_fastpath+0x16/0x1b
> [ 75.430015] INITIAL USE at:
> [ 75.430015] [<ffffffff810855d2>] __lock_acquire+0x342/0x9d0
> [ 75.430015] [<ffffffff81085d02>] lock_acquire+0xa2/0x1d0
> [ 75.430015] [<ffffffff814965c2>] _raw_spin_lock_irqsave+0x52/0x90
> [ 75.430015] [<ffffffffa07fb742>] nv50_fifo_create_context+0xf2/0x460 [nouveau]
> [ 75.430015] [<ffffffffa07cd4f2>] nouveau_channel_alloc+0x352/0x5e0 [nouveau]
> [ 75.430015] [<ffffffffa07cbed5>] nouveau_card_init_channel+0x45/0x150 [nouveau]
> [ 75.430015] [<ffffffffa07cc237>] nouveau_card_init+0x257/0x300 [nouveau]
> [ 75.430015] [<ffffffffa07cc631>] nouveau_load+0x351/0x660 [nouveau]
> [ 75.430015] [<ffffffffa075c1a3>] drm_get_pci_dev+0x183/0x3a0 [drm]
> [ 75.430015] [<ffffffffa08391ba>] nouveau_pci_probe+0x15/0x17 [nouveau]
> [ 75.430015] [<ffffffff8128e74f>] local_pci_probe+0x5f/0xd0
> [ 75.430015] [<ffffffff8128f538>] pci_device_probe+0x88/0xb0
> [ 75.430015] [<ffffffff8132b6c8>] really_probe+0x68/0x190
> [ 75.430015] [<ffffffff8132b835>] driver_probe_device+0x45/0x70
> [ 75.430015] [<ffffffff8132b8fb>] __driver_attach+0x9b/0xa0
> [ 75.430015] [<ffffffff8132ac5c>] bus_for_each_dev+0x6c/0xa0
> [ 75.430015] [<ffffffff8132b51e>] driver_attach+0x1e/0x20
> [ 75.430015] [<ffffffff8132a2a5>] bus_add_driver+0xd5/0x370
> [ 75.430015] [<ffffffff8132bc48>] driver_register+0x78/0x140
> [ 75.430015] [<ffffffff8128f7b6>] __pci_register_driver+0x66/0xe0
> [ 75.430015] [<ffffffffa075c49f>] drm_pci_init+0xdf/0xf0 [drm]
> [ 75.430015] [<ffffffffa07533d8>] drm_init+0x58/0x70 [drm]
> [ 75.430015] [<ffffffffa085b048>] 0xffffffffa085b048
> [ 75.430015] [<ffffffff810001e3>] do_one_initcall+0x43/0x180
> [ 75.430015] [<ffffffff8109529a>] sys_init_module+0xba/0x200
> [ 75.430015] [<ffffffff810027fb>] system_call_fastpath+0x16/0x1b
> [ 75.430015] }
> [ 75.430015] ... key at: [<ffffffffa084c359>] __key.41268+0x0/0xfffffffffffece63 [nouveau]
> [ 75.430015] ... acquired at:
> [ 75.430015] [<ffffffff81082df8>] check_usage+0x138/0x1e0
> [ 75.430015] [<ffffffff81082f00>] check_irq_usage+0x60/0xf0
> [ 75.430015] [<ffffffff81083fb4>] check_prev_add+0xc4/0x710
> [ 75.430015] [<ffffffff81085134>] validate_chain+0x5a4/0x700
> [ 75.430015] [<ffffffff81085746>] __lock_acquire+0x4b6/0x9d0
> [ 75.430015] [<ffffffff81085d02>] lock_acquire+0xa2/0x1d0
> [ 75.430015] [<ffffffff81496410>] _raw_spin_lock+0x40/0x80
> [ 75.430015] [<ffffffffa075f303>] drm_mm_put_block+0x93/0x190 [drm]
> [ 75.430015] [<ffffffffa07cfd35>] nouveau_gpuobj_del+0x135/0x1c0 [nouveau]
> [ 75.430015] [<ffffffffa07d040d>] nouveau_gpuobj_ref_del+0x9d/0xf0 [nouveau]
> [ 75.430015] [<ffffffffa08048c6>] nv50_graph_destroy_context+0xb6/0x110 [nouveau]
> [ 75.430015] [<ffffffffa07ccbf8>] nouveau_channel_free+0x128/0x2b0 [nouveau]
> [ 75.430015] [<ffffffffa07ccdee>] nouveau_ioctl_fifo_free+0x6e/0x80 [nouveau]
> [ 75.430015] [<ffffffffa075305b>] drm_ioctl+0x37b/0x4d0 [drm]
> [ 75.430015] [<ffffffff81124c7f>] do_vfs_ioctl+0x9f/0x330
> [ 75.430015] [<ffffffff81124f5f>] sys_ioctl+0x4f/0x80
> [ 75.430015] [<ffffffff810027fb>] system_call_fastpath+0x16/0x1b
> [ 75.430015]
> [ 75.430015]
> [ 75.430015] the dependencies between the lock to be acquired and HARDIRQ-irq-unsafe lock:
> [ 75.430015] -> (&(&mm->unused_lock)->rlock){+.+...} ops: 9351 {
> [ 75.430015] HARDIRQ-ON-W at:
> [ 75.430015] [<ffffffff81081a00>] mark_irqflags+0x120/0x190
> [ 75.430015] [<ffffffff8108580c>] __lock_acquire+0x57c/0x9d0
> [ 75.430015] [<ffffffff81085d02>] lock_acquire+0xa2/0x1d0
> [ 75.430015] [<ffffffff81496410>] _raw_spin_lock+0x40/0x80
> [ 75.430015] [<ffffffffa075efb5>] drm_mm_pre_get+0x25/0x1e0 [drm]
> [ 75.430015] [<ffffffffa07b123b>] ttm_bo_setup_vm+0x2b/0x140 [ttm]
> [ 75.430015] [<ffffffffa07b352d>] ttm_bo_init+0x24d/0x290 [ttm]
> [ 75.430015] [<ffffffffa07d8831>] nouveau_bo_new+0x161/0x2d0 [nouveau]
> [ 75.430015] [<ffffffffa07cdd30>] nouveau_mem_init+0x200/0x580 [nouveau]
> [ 75.430015] [<ffffffffa07cc0d6>] nouveau_card_init+0xf6/0x300 [nouveau]
> [ 75.430015] [<ffffffffa07cc631>] nouveau_load+0x351/0x660 [nouveau]
> [ 75.430015] [<ffffffffa075c1a3>] drm_get_pci_dev+0x183/0x3a0 [drm]
> [ 75.430015] [<ffffffffa08391ba>] nouveau_pci_probe+0x15/0x17 [nouveau]
> [ 75.430015] [<ffffffff8128e74f>] local_pci_probe+0x5f/0xd0
> [ 75.430015] [<ffffffff8128f538>] pci_device_probe+0x88/0xb0
> [ 75.430015] [<ffffffff8132b6c8>] really_probe+0x68/0x190
> [ 75.430015] [<ffffffff8132b835>] driver_probe_device+0x45/0x70
> [ 75.430015] [<ffffffff8132b8fb>] __driver_attach+0x9b/0xa0
> [ 75.430015] [<ffffffff8132ac5c>] bus_for_each_dev+0x6c/0xa0
> [ 75.430015] [<ffffffff8132b51e>] driver_attach+0x1e/0x20
> [ 75.430015] [<ffffffff8132a2a5>] bus_add_driver+0xd5/0x370
> [ 75.430015] [<ffffffff8132bc48>] driver_register+0x78/0x140
> [ 75.430015] [<ffffffff8128f7b6>] __pci_register_driver+0x66/0xe0
> [ 75.430015] [<ffffffffa075c49f>] drm_pci_init+0xdf/0xf0 [drm]
> [ 75.430015] [<ffffffffa07533d8>] drm_init+0x58/0x70 [drm]
> [ 75.430015] [<ffffffffa085b048>] 0xffffffffa085b048
> [ 75.430015] [<ffffffff810001e3>] do_one_initcall+0x43/0x180
> [ 75.430015] [<ffffffff8109529a>] sys_init_module+0xba/0x200
> [ 75.430015] [<ffffffff810027fb>] system_call_fastpath+0x16/0x1b
> [ 75.430015] SOFTIRQ-ON-W at:
> [ 75.430015] [<ffffffff81081a25>] mark_irqflags+0x145/0x190
> [ 75.430015] [<ffffffff8108580c>] __lock_acquire+0x57c/0x9d0
> [ 75.430015] [<ffffffff81085d02>] lock_acquire+0xa2/0x1d0
> [ 75.430015] [<ffffffff81496410>] _raw_spin_lock+0x40/0x80
> [ 75.430015] [<ffffffffa075efb5>] drm_mm_pre_get+0x25/0x1e0 [drm]
> [ 75.430015] [<ffffffffa07b123b>] ttm_bo_setup_vm+0x2b/0x140 [ttm]
> [ 75.430015] [<ffffffffa07b352d>] ttm_bo_init+0x24d/0x290 [ttm]
> [ 75.430015] [<ffffffffa07d8831>] nouveau_bo_new+0x161/0x2d0 [nouveau]
> [ 75.430015] [<ffffffffa07cdd30>] nouveau_mem_init+0x200/0x580 [nouveau]
> [ 75.430015] [<ffffffffa07cc0d6>] nouveau_card_init+0xf6/0x300 [nouveau]
> [ 75.430015] [<ffffffffa07cc631>] nouveau_load+0x351/0x660 [nouveau]
> [ 75.430015] [<ffffffffa075c1a3>] drm_get_pci_dev+0x183/0x3a0 [drm]
> [ 75.430015] [<ffffffffa08391ba>] nouveau_pci_probe+0x15/0x17 [nouveau]
> [ 75.430015] [<ffffffff8128e74f>] local_pci_probe+0x5f/0xd0
> [ 75.430015] [<ffffffff8128f538>] pci_device_probe+0x88/0xb0
> [ 75.430015] [<ffffffff8132b6c8>] really_probe+0x68/0x190
> [ 75.430015] [<ffffffff8132b835>] driver_probe_device+0x45/0x70
> [ 75.430015] [<ffffffff8132b8fb>] __driver_attach+0x9b/0xa0
> [ 75.430015] [<ffffffff8132ac5c>] bus_for_each_dev+0x6c/0xa0
> [ 75.430015] [<ffffffff8132b51e>] driver_attach+0x1e/0x20
> [ 75.430015] [<ffffffff8132a2a5>] bus_add_driver+0xd5/0x370
> [ 75.430015] [<ffffffff8132bc48>] driver_register+0x78/0x140
> [ 75.430015] [<ffffffff8128f7b6>] __pci_register_driver+0x66/0xe0
> [ 75.430015] [<ffffffffa075c49f>] drm_pci_init+0xdf/0xf0 [drm]
> [ 75.430015] [<ffffffffa07533d8>] drm_init+0x58/0x70 [drm]
> [ 75.430015] [<ffffffffa085b048>] 0xffffffffa085b048
> [ 75.430015] [<ffffffff810001e3>] do_one_initcall+0x43/0x180
> [ 75.430015] [<ffffffff8109529a>] sys_init_module+0xba/0x200
> [ 75.430015] [<ffffffff810027fb>] system_call_fastpath+0x16/0x1b
> [ 75.430015] INITIAL USE at:
> [ 75.430015] [<ffffffff810855d2>] __lock_acquire+0x342/0x9d0
> [ 75.430015] [<ffffffff81085d02>] lock_acquire+0xa2/0x1d0
> [ 75.430015] [<ffffffff81496410>] _raw_spin_lock+0x40/0x80
> [ 75.430015] [<ffffffffa075efb5>] drm_mm_pre_get+0x25/0x1e0 [drm]
> [ 75.430015] [<ffffffffa07b123b>] ttm_bo_setup_vm+0x2b/0x140 [ttm]
> [ 75.430015] [<ffffffffa07b352d>] ttm_bo_init+0x24d/0x290 [ttm]
> [ 75.430015] [<ffffffffa07d8831>] nouveau_bo_new+0x161/0x2d0 [nouveau]
> [ 75.430015] [<ffffffffa07cdd30>] nouveau_mem_init+0x200/0x580 [nouveau]
> [ 75.430015] [<ffffffffa07cc0d6>] nouveau_card_init+0xf6/0x300 [nouveau]
> [ 75.430015] [<ffffffffa07cc631>] nouveau_load+0x351/0x660 [nouveau]
> [ 75.430015] [<ffffffffa075c1a3>] drm_get_pci_dev+0x183/0x3a0 [drm]
> [ 75.430015] [<ffffffffa08391ba>] nouveau_pci_probe+0x15/0x17 [nouveau]
> [ 75.430015] [<ffffffff8128e74f>] local_pci_probe+0x5f/0xd0
> [ 75.430015] [<ffffffff8128f538>] pci_device_probe+0x88/0xb0
> [ 75.430015] [<ffffffff8132b6c8>] really_probe+0x68/0x190
> [ 75.430015] [<ffffffff8132b835>] driver_probe_device+0x45/0x70
> [ 75.430015] [<ffffffff8132b8fb>] __driver_attach+0x9b/0xa0
> [ 75.430015] [<ffffffff8132ac5c>] bus_for_each_dev+0x6c/0xa0
> [ 75.430015] [<ffffffff8132b51e>] driver_attach+0x1e/0x20
> [ 75.430015] [<ffffffff8132a2a5>] bus_add_driver+0xd5/0x370
> [ 75.430015] [<ffffffff8132bc48>] driver_register+0x78/0x140
> [ 75.430015] [<ffffffff8128f7b6>] __pci_register_driver+0x66/0xe0
> [ 75.430015] [<ffffffffa075c49f>] drm_pci_init+0xdf/0xf0 [drm]
> [ 75.430015] [<ffffffffa07533d8>] drm_init+0x58/0x70 [drm]
> [ 75.430015] [<ffffffffa085b048>] 0xffffffffa085b048
> [ 75.430015] [<ffffffff810001e3>] do_one_initcall+0x43/0x180
> [ 75.430015] [<ffffffff8109529a>] sys_init_module+0xba/0x200
> [ 75.430015] [<ffffffff810027fb>] system_call_fastpath+0x16/0x1b
> [ 75.430015] }
> [ 75.430015] ... key at: [<ffffffffa07771fc>] __key.38649+0x0/0xffffffffffff3460 [drm]
> [ 75.430015] ... acquired at:
> [ 75.430015] [<ffffffff81082df8>] check_usage+0x138/0x1e0
> [ 75.430015] [<ffffffff81082f00>] check_irq_usage+0x60/0xf0
> [ 75.430015] [<ffffffff81083fb4>] check_prev_add+0xc4/0x710
> [ 75.430015] [<ffffffff81085134>] validate_chain+0x5a4/0x700
> [ 75.430015] [<ffffffff81085746>] __lock_acquire+0x4b6/0x9d0
> [ 75.430015] [<ffffffff81085d02>] lock_acquire+0xa2/0x1d0
> [ 75.430015] [<ffffffff81496410>] _raw_spin_lock+0x40/0x80
> [ 75.430015] [<ffffffffa075f303>] drm_mm_put_block+0x93/0x190 [drm]
> [ 75.430015] [<ffffffffa07cfd35>] nouveau_gpuobj_del+0x135/0x1c0 [nouveau]
> [ 75.430015] [<ffffffffa07d040d>] nouveau_gpuobj_ref_del+0x9d/0xf0 [nouveau]
> [ 75.430015] [<ffffffffa08048c6>] nv50_graph_destroy_context+0xb6/0x110 [nouveau]
> [ 75.430015] [<ffffffffa07ccbf8>] nouveau_channel_free+0x128/0x2b0 [nouveau]
> [ 75.430015] [<ffffffffa07ccdee>] nouveau_ioctl_fifo_free+0x6e/0x80 [nouveau]
> [ 75.430015] [<ffffffffa075305b>] drm_ioctl+0x37b/0x4d0 [drm]
> [ 75.430015] [<ffffffff81124c7f>] do_vfs_ioctl+0x9f/0x330
> [ 75.430015] [<ffffffff81124f5f>] sys_ioctl+0x4f/0x80
> [ 75.430015] [<ffffffff810027fb>] system_call_fastpath+0x16/0x1b
> [ 75.430015]
> [ 75.430015]
> [ 75.430015] stack backtrace:
> [ 75.430015] Pid: 3109, comm: Xorg Not tainted 2.6.36-rc3-wl-47417-g8164729-dirty #183
> [ 75.430015] Call Trace:
> [ 75.430015] [<ffffffff81082c1e>] print_bad_irq_dependency+0x2ce/0x370
> [ 75.430015] [<ffffffff81082df8>] check_usage+0x138/0x1e0
> [ 75.430015] [<ffffffff81082f00>] check_irq_usage+0x60/0xf0
> [ 75.430015] [<ffffffff81083fb4>] check_prev_add+0xc4/0x710
> [ 75.430015] [<ffffffff81009d17>] ? native_sched_clock+0x27/0x80
> [ 75.430015] [<ffffffff81085134>] validate_chain+0x5a4/0x700
> [ 75.430015] [<ffffffff81085746>] __lock_acquire+0x4b6/0x9d0
> [ 75.430015] [<ffffffff81009d17>] ? native_sched_clock+0x27/0x80
> [ 75.430015] [<ffffffff81085d02>] lock_acquire+0xa2/0x1d0
> [ 75.430015] [<ffffffffa075f303>] ? drm_mm_put_block+0x93/0x190 [drm]
> [ 75.430015] [<ffffffff81496410>] _raw_spin_lock+0x40/0x80
> [ 75.430015] [<ffffffffa075f303>] ? drm_mm_put_block+0x93/0x190 [drm]
> [ 75.430015] [<ffffffffa075f303>] drm_mm_put_block+0x93/0x190 [drm]
> [ 75.430015] [<ffffffffa07cfd35>] nouveau_gpuobj_del+0x135/0x1c0 [nouveau]
> [ 75.430015] [<ffffffffa07d040d>] nouveau_gpuobj_ref_del+0x9d/0xf0 [nouveau]
> [ 75.430015] [<ffffffffa08048c6>] nv50_graph_destroy_context+0xb6/0x110 [nouveau]
> [ 75.430015] [<ffffffffa07ccbf8>] nouveau_channel_free+0x128/0x2b0 [nouveau]
> [ 75.430015] [<ffffffffa07ccdee>] nouveau_ioctl_fifo_free+0x6e/0x80 [nouveau]
> [ 75.430015] [<ffffffffa075305b>] drm_ioctl+0x37b/0x4d0 [drm]
> [ 75.430015] [<ffffffff81009d17>] ? native_sched_clock+0x27/0x80
> [ 75.430015] [<ffffffffa07ccd80>] ? nouveau_ioctl_fifo_free+0x0/0x80 [nouveau]
> [ 75.430015] [<ffffffff81038281>] ? get_parent_ip+0x11/0x50
> [ 75.430015] [<ffffffff81038281>] ? get_parent_ip+0x11/0x50
> [ 75.430015] [<ffffffff8149ac3d>] ? sub_preempt_count+0x9d/0xd0
> [ 75.430015] [<ffffffff8108042e>] ? put_lock_stats+0xe/0x30
> [ 75.430015] [<ffffffff810f90c1>] ? sys_munmap+0x61/0x80
> [ 75.430015] [<ffffffff81124c7f>] do_vfs_ioctl+0x9f/0x330
> [ 75.430015] [<ffffffff81124f5f>] sys_ioctl+0x4f/0x80
> [ 75.430015] [<ffffffff810027fb>] system_call_fastpath+0x16/0x1b
>
Yes, that's a known issue, the scenario where it actually dead locks is
impossible so don't worry about it. Several solutions are discussed here
[1].
>
> (also, while I'm at asking questions, is it a known problem that
> switching between using an external monitor and not using it will with
> high probability lock up? Same for using dpms to turn off the screens,
> though that might just be the same thing?)
>
I haven't seen anything like that, please file a new bug report [2].
> johannes
[1] http://lists.freedesktop.org/archives/nouveau/2010-July/005994.html
[2] http://nouveau.freedesktop.org/wiki/Bugs
[-- Attachment #1.2: Type: application/pgp-signature, Size: 229 bytes --]
[-- Attachment #2: Type: text/plain, Size: 159 bytes --]
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel
next prev parent reply other threads:[~2010-09-01 12:03 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-09-01 7:26 nouveau lockdep warning Johannes Berg
2010-09-01 12:09 ` Francisco Jerez [this message]
2010-09-01 12:36 ` Johannes Berg
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=87r5hd3bth.fsf@riseup.net \
--to=currojerez@riseup.net \
--cc=bskeggs@redhat.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=johannes@sipsolutions.net \
/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.