Johannes Berg <johan...@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
pgp0PClS965bs.pgp
Description: PGP signature
_______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel