Bug 663804 - HARDIRQ-safe -> HARDIRQ-unsafe lock order detected
Summary: HARDIRQ-safe -> HARDIRQ-unsafe lock order detected
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: xorg-x11-drv-nouveau
Version: rawhide
Hardware: Unspecified
OS: Unspecified
low
high
Target Milestone: ---
Assignee: Ben Skeggs
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: [cat:crash]
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-12-16 21:29 UTC by John Reiser
Modified: 2018-04-11 15:49 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2011-08-08 09:47:38 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
Xorg.0.log (61.51 KB, text/plain)
2010-12-16 21:29 UTC, John Reiser
no flags Details
Xorg.0.log.old (37.88 KB, text/plain)
2010-12-16 22:14 UTC, John Reiser
no flags Details

Description John Reiser 2010-12-16 21:29:12 UTC
Created attachment 469219 [details]
Xorg.0.log

Description of problem: /var/log/messages has lock order complaint shortly after  boot.


Version-Release number of selected component (if applicable):
kernel-2.6.37-0.rc5.git2.1.fc15.x86_64
xorg-x11-drv-nouveau-0.0.16-14.20101129gitf29afe6.fc15.x86_64
xorg-x11-drv-nv-2.1.18-4.fc15.x86_64
xorg-x11-server-common-1.9.99.1-2.20101201.fc15.x86_64
xorg-x11-server-Xorg-1.9.99.1-2.20101201.fc15.x86_64


How reproducible: haven't tried


Steps to Reproduce:
1. first boot to multi-user
2.
3.
  
Actual results: from /var/log/messages
[   71.611755] [drm] nouveau 0000:05:00.0: nouveau_channel_free: freeing fifo 2
[   71.613033] 
[   71.613033] ======================================================
[   71.613033] [ INFO: HARDIRQ-safe -> HARDIRQ-unsafe lock order detected ]
[   71.613033] 2.6.37-0.rc5.git2.1.fc15.x86_64 #1
[   71.613033] ------------------------------------------------------
[   71.613033] Xorg/1294 [HC0[0]:SC0[0]:HE0:SE1] is trying to acquire:
[   71.613033]  (&(&dev_priv->ramin_lock)->rlock){+.+...}, at: [<ffffffffa009324b>] nouveau_gpuobj_del+0xc5/0xf5 [nouveau]
[   71.613033] 
[   71.613033] and this task is already holding:
[   71.613033]  (&(&dev_priv->context_switch_lock)->rlock){-.-...}, at: [<ffffffffa0090896>] nouveau_channel_free+0x11a/0x254 [nouveau]
[   71.613033] which would create a new lock dependency:
[   71.613033]  (&(&dev_priv->context_switch_lock)->rlock){-.-...} -> (&(&dev_priv->ramin_lock)->rlock){+.+...}
[   71.613033] 
[   71.613033] but this new dependency connects a HARDIRQ-irq-safe lock:
[   71.613033]  (&(&dev_priv->context_switch_lock)->rlock){-.-...}
[   71.613033] ... which became HARDIRQ-irq-safe at:
[   71.613033]   [<ffffffff81081e8e>] __lock_acquire+0x2f0/0xd65
[   71.613033]   [<ffffffff81082dd2>] lock_acquire+0xc8/0xf3
[   71.613033]   [<ffffffff814b450b>] _raw_spin_lock_irqsave+0x45/0x7f
[   71.613033]   [<ffffffffa0095046>] nouveau_irq_handler+0x69/0x1ad7 [nouveau]
[   71.613033]   [<ffffffff810ba0eb>] handle_IRQ_event+0x61/0x132
[   71.613033] [drm] nouveau 0000:05:00.0: GPU lockup - switching to software fbcon
[   71.613033]   [<ffffffff810bc4a3>] handle_fasteoi_irq+0xc6/0x10c
[   71.613033]   [<ffffffff8100d351>] handle_irq+0x88/0x90
[   71.613033]   [<ffffffff814bb528>] do_IRQ+0x58/0xb0
[   71.613033]   [<ffffffff814b5053>] ret_from_intr+0x0/0x16
[   71.613033] 
[   71.613033] to a HARDIRQ-irq-unsafe lock:
[   71.613033]  (&(&dev_priv->ramin_lock)->rlock){+.+...}
[   71.613033] ... which became HARDIRQ-irq-unsafe at:
[   71.613033] ...  [<ffffffff81081f0f>] __lock_acquire+0x371/0xd65
[   71.613033]   [<ffffffff81082dd2>] lock_acquire+0xc8/0xf3
[   71.613033]   [<ffffffff814b439b>] _raw_spin_lock+0x36/0x69
[   71.613033]   [<ffffffffa00933e7>] nouveau_gpuobj_new+0x16c/0x3db [nouveau]
[   71.613033]   [<ffffffffa00c59fe>] nv50_instmem_init+0x191/0x75b [nouveau]
[   71.613033]   [<ffffffffa008f9eb>] nouveau_card_init+0x107b/0x138d [nouveau]
[   71.613033]   [<ffffffffa009029c>] nouveau_load+0x582/0x5dd [nouveau]
[   71.613033]   [<ffffffffa0031c83>] drm_get_pci_dev+0x18a/0x28c [drm]
[   71.613033]   [<ffffffffa00d6c89>] nouveau_pci_probe+0x15/0x17 [nouveau]
[   71.613033]   [<ffffffff81268eb3>] local_pci_probe+0x44/0x75
[   71.613033]   [<ffffffff8106907b>] do_work_for_cpu+0x18/0x2a
[   71.613033]   [<ffffffff8106ecee>] kthread+0xa0/0xa8
[   71.613033]   [<ffffffff8100bb24>] kernel_thread_helper+0x4/0x10
[   71.613033] 
[   71.613033] other info that might help us debug this:
[   71.613033] 
[   71.613033] 2 locks held by Xorg/1294:
[   71.613033]  #0:  (drm_global_mutex){+.+.+.}, at: [<ffffffffa002b3ae>] drm_release+0x3a/0x5d9 [drm]
[   71.613033]  #1:  (&(&dev_priv->context_switch_lock)->rlock){-.-...}, at: [<ffffffffa0090896>] nouveau_channel_free+0x11a/0x254 [nouveau]
[   71.613033] 
[   71.613033] the dependencies between HARDIRQ-irq-safe lock and the holding lock:
[   71.613033] -> (&(&dev_priv->context_switch_lock)->rlock){-.-...} ops: 10 {
[   71.613033]    IN-HARDIRQ-W at:
[   71.613033]                                        [<ffffffff81081e8e>] __lock_acquire+0x2f0/0xd65
[   71.613033]                                        [<ffffffff81082dd2>] lock_acquire+0xc8/0xf3
[   71.613033]                                        [<ffffffff814b450b>] _raw_spin_lock_irqsave+0x45/0x7f
[   71.613033]                                        [<ffffffffa0095046>] nouveau_irq_handler+0x69/0x1ad7 [nouveau]
[   71.613033]                                        [<ffffffff810ba0eb>] handle_IRQ_event+0x61/0x132
[   71.613033]                                        [<ffffffff810bc4a3>] handle_fasteoi_irq+0xc6/0x10c
[   71.613033]                                        [<ffffffff8100d351>] handle_irq+0x88/0x90
[   71.613033]                                        [<ffffffff814bb528>] do_IRQ+0x58/0xb0
[   71.613033]                                        [<ffffffff814b5053>] ret_from_intr+0x0/0x16
[   71.613033]    IN-SOFTIRQ-W at:
[   71.613033]                                        [<ffffffff81081eb5>] __lock_acquire+0x317/0xd65
[   71.613033]                                        [<ffffffff81082dd2>] lock_acquire+0xc8/0xf3
[   71.613033]                                        [<ffffffff814b450b>] _raw_spin_lock_irqsave+0x45/0x7f
[   71.613033]                                        [<ffffffffa0095046>] nouveau_irq_handler+0x69/0x1ad7 [nouveau]
[   71.613033]                                        [<ffffffff810ba0eb>] handle_IRQ_event+0x61/0x132
[   71.613033]                                        [<ffffffff810bc4a3>] handle_fasteoi_irq+0xc6/0x10c
[   71.613033]                                        [<ffffffff8100d351>] handle_irq+0x88/0x90
[   71.613033]                                        [<ffffffff814bb528>] do_IRQ+0x58/0xb0
[   71.613033]                                        [<ffffffff814b5053>] ret_from_intr+0x0/0x16
[   71.613033]    INITIAL USE at:
[   71.613033]                                       [<ffffffff81081f90>] __lock_acquire+0x3f2/0xd65
[   71.613033]                                       [<ffffffff81082dd2>] lock_acquire+0xc8/0xf3
[   71.613033]                                       [<ffffffff814b450b>] _raw_spin_lock_irqsave+0x45/0x7f
[   71.613033]                                       [<ffffffffa00b307b>] nv50_fifo_create_context+0x131/0x2cc [nouveau]
[   71.613033]                                       [<ffffffffa0090e8e>] nouveau_channel_alloc+0x4be/0x550 [nouveau]
[   71.613033]                                       [<ffffffffa008fb1b>] nouveau_card_init+0x11ab/0x138d [nouveau]
[   71.613033]                                       [<ffffffffa009029c>] nouveau_load+0x582/0x5dd [nouveau]
[   71.613033]                                       [<ffffffffa0031c83>] drm_get_pci_dev+0x18a/0x28c [drm]
[   71.613033]                                       [<ffffffffa00d6c89>] nouveau_pci_probe+0x15/0x17 [nouveau]
[   71.613033]                                       [<ffffffff81268eb3>] local_pci_probe+0x44/0x75
[   71.613033]                                       [<ffffffff8106907b>] do_work_for_cpu+0x18/0x2a
[   71.613033]                                       [<ffffffff8106ecee>] kthread+0xa0/0xa8
[   71.613033]                                       [<ffffffff8100bb24>] kernel_thread_helper+0x4/0x10
[   71.613033]  }
[   71.613033]  ... key      at: [<ffffffffa00eab28>] __key.36454+0x0/0xfffffffffffec18d [nouveau]
[   71.613033]  ... acquired at:
[   71.613033]    [<ffffffff81081729>] check_irq_usage+0x42/0x89
[   71.613033]    [<ffffffff81082624>] __lock_acquire+0xa86/0xd65
[   71.613033]    [<ffffffff81082dd2>] lock_acquire+0xc8/0xf3
[   71.613033]    [<ffffffff814b439b>] _raw_spin_lock+0x36/0x69
[   71.613033]    [<ffffffffa009324b>] nouveau_gpuobj_del+0xc5/0xf5 [nouveau]
[   71.613033]    [<ffffffff8124cbce>] kref_put+0x43/0x4d
[   71.613033]    [<ffffffffa0092922>] nouveau_gpuobj_ref+0x39/0x42 [nouveau]
[   71.613033]    [<ffffffffa00ba1a1>] nv50_graph_destroy_context+0xbc/0xc8 [nouveau]
[   71.613033]    [<ffffffffa00908cc>] nouveau_channel_free+0x150/0x254 [nouveau]
[   71.613033]    [<ffffffffa0091099>] nouveau_channel_cleanup+0x76/0x8f [nouveau]
[   71.613033]    [<ffffffffa008fd0b>] nouveau_preclose+0xe/0x10 [nouveau]
[   71.613033]    [<ffffffffa002b3ee>] drm_release+0x7a/0x5d9 [drm]
[   71.613033]    [<ffffffff81134409>] fput+0x12c/0x1df
[   71.613033]    [<ffffffff81130e01>] filp_close+0x66/0x70
[   71.613033]    [<ffffffff8105632f>] put_files_struct+0xd3/0x19f
[   71.613033]    [<ffffffff81056498>] exit_files+0x4b/0x54
[   71.613033]    [<ffffffff81056a21>] do_exit+0x27d/0x7d8
[   71.613033]    [<ffffffff81057212>] do_group_exit+0x88/0xb6
[   71.613033]    [<ffffffff8106425b>] get_signal_to_deliver+0x3e2/0x401
[   71.613033]    [<ffffffff81009fe1>] do_signal+0x72/0x695
[   71.613033]    [<ffffffff8100a645>] do_notify_resume+0x28/0x86
[   71.613033]    [<ffffffff8100afd3>] int_signal+0x12/0x17
[   71.613033] 
[   71.613033] 
[   71.613033] the dependencies between the lock to be acquired and HARDIRQ-irq-unsafe lock:
[   71.613033] -> (&(&dev_priv->ramin_lock)->rlock){+.+...} ops: 20676 {
[   71.613033]    HARDIRQ-ON-W at:
[   71.613033]                                        [<ffffffff81081f0f>] __lock_acquire+0x371/0xd65
[   71.613033]                                        [<ffffffff81082dd2>] lock_acquire+0xc8/0xf3
[   71.613033]                                        [<ffffffff814b439b>] _raw_spin_lock+0x36/0x69
[   71.613033]                                        [<ffffffffa00933e7>] nouveau_gpuobj_new+0x16c/0x3db [nouveau]
[   71.613033]                                        [<ffffffffa00c59fe>] nv50_instmem_init+0x191/0x75b [nouveau]
[   71.613033]                                        [<ffffffffa008f9eb>] nouveau_card_init+0x107b/0x138d [nouveau]
[   71.613033]                                        [<ffffffffa009029c>] nouveau_load+0x582/0x5dd [nouveau]
[   71.613033]                                        [<ffffffffa0031c83>] drm_get_pci_dev+0x18a/0x28c [drm]
[   71.613033]                                        [<ffffffffa00d6c89>] nouveau_pci_probe+0x15/0x17 [nouveau]
[   71.613033]                                        [<ffffffff81268eb3>] local_pci_probe+0x44/0x75
[   71.613033]                                        [<ffffffff8106907b>] do_work_for_cpu+0x18/0x2a
[   71.613033]                                        [<ffffffff8106ecee>] kthread+0xa0/0xa8
[   71.613033]                                        [<ffffffff8100bb24>] kernel_thread_helper+0x4/0x10
[   71.613033]    SOFTIRQ-ON-W at:
[   71.613033]                                        [<ffffffff81081f33>] __lock_acquire+0x395/0xd65
[   71.613033]                                        [<ffffffff81082dd2>] lock_acquire+0xc8/0xf3
[   71.613033]                                        [<ffffffff814b439b>] _raw_spin_lock+0x36/0x69
[   71.613033]                                        [<ffffffffa00933e7>] nouveau_gpuobj_new+0x16c/0x3db [nouveau]
[   71.613033]                                        [<ffffffffa00c59fe>] nv50_instmem_init+0x191/0x75b [nouveau]
[   71.613033]                                        [<ffffffffa008f9eb>] nouveau_card_init+0x107b/0x138d [nouveau]
[   71.613033]                                        [<ffffffffa009029c>] nouveau_load+0x582/0x5dd [nouveau]
[   71.613033]                                        [<ffffffffa0031c83>] drm_get_pci_dev+0x18a/0x28c [drm]
[   71.613033]                                        [<ffffffffa00d6c89>] nouveau_pci_probe+0x15/0x17 [nouveau]
[   71.613033]                                        [<ffffffff81268eb3>] local_pci_probe+0x44/0x75
[   71.613033]                                        [<ffffffff8106907b>] do_work_for_cpu+0x18/0x2a
[   71.613033]                                        [<ffffffff8106ecee>] kthread+0xa0/0xa8
[   71.613033]                                        [<ffffffff8100bb24>] kernel_thread_helper+0x4/0x10
[   71.613033]    INITIAL USE at:
[   71.613033]                                       [<ffffffff81081f90>] __lock_acquire+0x3f2/0xd65
[   71.613033]                                       [<ffffffff81082dd2>] lock_acquire+0xc8/0xf3
[   71.613033]                                       [<ffffffff814b439b>] _raw_spin_lock+0x36/0x69
[   71.613033]                                       [<ffffffffa00933e7>] nouveau_gpuobj_new+0x16c/0x3db [nouveau]
[   71.613033]                                       [<ffffffffa00c59fe>] nv50_instmem_init+0x191/0x75b [nouveau]
[   71.613033]                                       [<ffffffffa008f9eb>] nouveau_card_init+0x107b/0x138d [nouveau]
[   71.613033]                                       [<ffffffffa009029c>] nouveau_load+0x582/0x5dd [nouveau]
[   71.613033]                                       [<ffffffffa0031c83>] drm_get_pci_dev+0x18a/0x28c [drm]
[   71.613033]                                       [<ffffffffa00d6c89>] nouveau_pci_probe+0x15/0x17 [nouveau]
[   71.613033]                                       [<ffffffff81268eb3>] local_pci_probe+0x44/0x75
[   71.613033]                                       [<ffffffff8106907b>] do_work_for_cpu+0x18/0x2a
[   71.613033]                                       [<ffffffff8106ecee>] kthread+0xa0/0xa8
[   71.613033]                                       [<ffffffff8100bb24>] kernel_thread_helper+0x4/0x10
[   71.613033]  }
[   71.613033]  ... key      at: [<ffffffffa00eab30>] __key.35811+0x0/0xfffffffffffec185 [nouveau]
[   71.613033]  ... acquired at:
[   71.613033]    [<ffffffff81081729>] check_irq_usage+0x42/0x89
[   71.613033]    [<ffffffff81082624>] __lock_acquire+0xa86/0xd65
[   71.613033]    [<ffffffff81082dd2>] lock_acquire+0xc8/0xf3
[   71.613033]    [<ffffffff814b439b>] _raw_spin_lock+0x36/0x69
[   71.613033]    [<ffffffffa009324b>] nouveau_gpuobj_del+0xc5/0xf5 [nouveau]
[   71.613033]    [<ffffffff8124cbce>] kref_put+0x43/0x4d
[   71.613033]    [<ffffffffa0092922>] nouveau_gpuobj_ref+0x39/0x42 [nouveau]
[   71.613033]    [<ffffffffa00ba1a1>] nv50_graph_destroy_context+0xbc/0xc8 [nouveau]
[   71.613033]    [<ffffffffa00908cc>] nouveau_channel_free+0x150/0x254 [nouveau]
[   71.613033]    [<ffffffffa0091099>] nouveau_channel_cleanup+0x76/0x8f [nouveau]
[   71.613033]    [<ffffffffa008fd0b>] nouveau_preclose+0xe/0x10 [nouveau]
[   71.613033]    [<ffffffffa002b3ee>] drm_release+0x7a/0x5d9 [drm]
[   71.613033]    [<ffffffff81134409>] fput+0x12c/0x1df
[   71.613033]    [<ffffffff81130e01>] filp_close+0x66/0x70
[   71.613033]    [<ffffffff8105632f>] put_files_struct+0xd3/0x19f
[   71.613033]    [<ffffffff81056498>] exit_files+0x4b/0x54
[   71.613033]    [<ffffffff81056a21>] do_exit+0x27d/0x7d8
[   71.613033]    [<ffffffff81057212>] do_group_exit+0x88/0xb6
[   71.613033]    [<ffffffff8106425b>] get_signal_to_deliver+0x3e2/0x401
[   71.613033]    [<ffffffff81009fe1>] do_signal+0x72/0x695
[   71.613033]    [<ffffffff8100a645>] do_notify_resume+0x28/0x86
[   71.613033]    [<ffffffff8100afd3>] int_signal+0x12/0x17
[   71.613033] 
[   71.613033] 
[   71.613033] stack backtrace:
[   71.613033] Pid: 1294, comm: Xorg Not tainted 2.6.37-0.rc5.git2.1.fc15.x86_64 #1
[   71.613033] Call Trace:
[   71.613033]  [<ffffffff810816d2>] check_usage+0x351/0x366
[   71.613033]  [<ffffffff8101161c>] ? sched_clock+0x9/0xd
[   71.613033]  [<ffffffff81082108>] ? __lock_acquire+0x56a/0xd65
[   71.613033]  [<ffffffff81081729>] check_irq_usage+0x42/0x89
[   71.613033]  [<ffffffff81082624>] __lock_acquire+0xa86/0xd65
[   71.613033]  [<ffffffff81082108>] ? __lock_acquire+0x56a/0xd65
[   71.613033]  [<ffffffffa009324b>] ? nouveau_gpuobj_del+0xc5/0xf5 [nouveau]
[   71.613033]  [<ffffffff81082dd2>] lock_acquire+0xc8/0xf3
[   71.613033]  [<ffffffffa009324b>] ? nouveau_gpuobj_del+0xc5/0xf5 [nouveau]
[   71.613033]  [<ffffffff814b439b>] _raw_spin_lock+0x36/0x69
[   71.613033]  [<ffffffffa009324b>] ? nouveau_gpuobj_del+0xc5/0xf5 [nouveau]
[   71.613033]  [<ffffffffa00c55e6>] ? nv84_instmem_flush+0x3a/0x6a [nouveau]
[   71.613033]  [<ffffffffa009324b>] nouveau_gpuobj_del+0xc5/0xf5 [nouveau]
[   71.613033]  [<ffffffffa0093186>] ? nouveau_gpuobj_del+0x0/0xf5 [nouveau]
[   71.613033]  [<ffffffff8124cbce>] kref_put+0x43/0x4d
[   71.613033]  [<ffffffffa0092922>] nouveau_gpuobj_ref+0x39/0x42 [nouveau]
[   71.613033]  [<ffffffffa00ba1a1>] nv50_graph_destroy_context+0xbc/0xc8 [nouveau]
[   71.613033]  [<ffffffffa00908cc>] nouveau_channel_free+0x150/0x254 [nouveau]
[   71.613033]  [<ffffffffa0091099>] nouveau_channel_cleanup+0x76/0x8f [nouveau]
[   71.613033]  [<ffffffffa008fd0b>] nouveau_preclose+0xe/0x10 [nouveau]
[   71.613033]  [<ffffffffa002b3ee>] drm_release+0x7a/0x5d9 [drm]
[   71.613033]  [<ffffffff81134409>] fput+0x12c/0x1df
[   71.613033]  [<ffffffff81130e01>] filp_close+0x66/0x70
[   71.613033]  [<ffffffff8105632f>] put_files_struct+0xd3/0x19f
[   71.613033]  [<ffffffff81056498>] exit_files+0x4b/0x54
[   71.613033]  [<ffffffff81056a21>] do_exit+0x27d/0x7d8
[   71.613033]  [<ffffffff81057212>] do_group_exit+0x88/0xb6
[   71.613033]  [<ffffffff8106425b>] get_signal_to_deliver+0x3e2/0x401
[   71.613033]  [<ffffffff81009fe1>] do_signal+0x72/0x695
[   71.613033]  [<ffffffff8100acba>] ? sysret_check+0x2e/0x69
[   71.613033]  [<ffffffff810831f1>] ? trace_hardirqs_on_caller+0x10b/0x12f
[   71.613033]  [<ffffffff810ac2a0>] ? audit_syscall_entry+0x11c/0x148
[   71.613033]  [<ffffffff814b4111>] ? trace_hardirqs_on_thunk+0x3a/0x3f
[   71.613033]  [<ffffffff8100ad19>] ? sysret_signal+0x5/0x4e
[   71.613033]  [<ffffffff8100a645>] do_notify_resume+0x28/0x86
[   71.613033]  [<ffffffff8100afd3>] int_signal+0x12/0x17
[   73.131770] [drm] nouveau 0000:05:00.0: Allocating FIFO number 2


Expected results: no complaint


Additional info:
# lspci
00:00.0 Memory controller: nVidia Corporation CK804 Memory Controller (rev a3)
00:01.0 ISA bridge: nVidia Corporation CK804 ISA Bridge (rev a3)
00:01.1 SMBus: nVidia Corporation CK804 SMBus (rev a2)
00:02.0 USB Controller: nVidia Corporation CK804 USB Controller (rev a2)
00:02.1 USB Controller: nVidia Corporation CK804 USB Controller (rev a3)
00:04.0 Multimedia audio controller: nVidia Corporation CK804 AC'97 Audio Controller (rev a2)
00:06.0 IDE interface: nVidia Corporation CK804 IDE (rev f2)
00:07.0 IDE interface: nVidia Corporation CK804 Serial ATA Controller (rev f3)
00:09.0 PCI bridge: nVidia Corporation CK804 PCI Bridge (rev a2)
00:0a.0 Bridge: nVidia Corporation CK804 Ethernet Controller (rev a3)
00:0b.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
00:0c.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
00:0d.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
00:0e.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration
00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map
00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller
00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control
05:00.0 VGA compatible controller: nVidia Corporation G84 [GeForce 8400 GS] (rev a1)

Comment 1 John Reiser 2010-12-16 22:12:13 UTC
It looks like firstboot failed graphical mode, then tried console text mode, and then gdm got started in graphical mode.  The problem with lock order was detected at login to graphical mode.  Booting with text console shows:
-----
Starting ACPI Event Daemon...
Starting /etc/rc.local Compatibility...
Starting firstboot configuration program (graphical mode)...
Retrigger failed udev eventsStarting cups: Starting mdmonitor:  Text Mode Setup Utility 1.19.11(c) 1999-2006 Red Hat, Inc. ┌────────┤ Choose a Tool ├─────────┐ ││ │   Authentication configuration   │ │   Firewall configuration│ │   Keyboard configuration│ │   Network configuration│ │   System services│ ││ │┌──────────┐  ┌──────┐│ ││ Run Tool │  │ Quit ││ │└──────────┘  └──────┘│ ││ ││ └──────────────────────────────────┘<Tab>/<Alt-Tab> between elements  |    Use <Enter> to edit a selection[FAILED]
Starting firstboot configuration program (graphical mode) failed.
Starting Display Manager...
[   46.666876] [drm] nouveau 0000:05:00.0: Allocating FIFO number 2
[   46.682439] [drm] nouveau 0000:05:00.0: nouveau_channel_alloc: initialised FIFO 2
[   54.971897] ata1.00: configured for UDMA/100
[   54.976397] ata1: EH complete
[   55.487462] ata3.00: configured for UDMA/133
[   55.491848] ata3: EH complete
[   55.620382] ata4.00: configured for UDMA/133
[   55.624707] ata4: EH complete
[   56.152679] EXT4-fs (sdd7): re-mounted. Opts: commit=0
[   75.438981] [drm] nouveau 0000:05:00.0: nouveau_channel_free: freeing fifo 2
[   75.454022] 
[   75.454022] ======================================================
[   75.454022] [ INFO: HARDIRQ-safe -> HARDIRQ-unsafe lock order detected ]
[   75.454022] 2.6.37-0.rc5.git2.1.fc15.x86_64 #1
[   75.454022] ------------------------------------------------------
[   75.454022] Xorg/1170 [HC0[0]:SC0[0]:HE0:SE1] is trying to acquire:
[   75.454022]  (&(&dev_priv->ramin_lock)->rlock){+.+...}, at: [<ffffffffa009324b>] nouveau_gpuobj_del+0xc5/0xf5 [nouveau]
-----

There was also a traceback in /var/log/Xorg.0.log.old which I will attach.

Comment 2 John Reiser 2010-12-16 22:14:44 UTC
Created attachment 469225 [details]
Xorg.0.log.old

Backtrace:
[    70.479] 0: /usr/bin/Xorg (xorg_backtrace+0x34) [0x4a2834]
[    70.479] 1: /usr/bin/Xorg (0x400000+0x61f47) [0x461f47]
[    70.479] 2: /lib64/libc.so.6 (0x7f2ccaac8000+0x34100) [0x7f2ccaafc100]
[    70.479] 3: /lib64/libc.so.6 (__select+0x13) [0x7f2ccaba4ec3]
[    70.479] 4: /usr/bin/Xorg (WaitForSomething+0x183) [0x45aff3]
[    70.479] 5: /usr/bin/Xorg (0x400000+0x2d2c2) [0x42d2c2]
[    70.480] 6: /usr/bin/Xorg (0x400000+0x211ca) [0x4211ca]
[    70.480] 7: /lib64/libc.so.6 (__libc_start_main+0xfd) [0x7f2ccaae6e7d]
[    70.480] 8: /usr/bin/Xorg (0x400000+0x20d69) [0x420d69]
[    70.480]
Fatal server error:
[    70.480] Caught signal 3 (Quit). Server aborting
[    70.480]

Comment 3 John Reiser 2010-12-17 16:32:10 UTC
The same thing happens on every boot, probably because firstboot is still trying.  I see files such as
-----/tmp/firstboot-KY7mfE
Traceback (most recent call last):
  File "/usr/sbin/firstboot", line 168, in <module>
    config.frontend.start()
  File "/usr/lib/python2.7/site-packages/firstboot/xfrontend.py", line 98, in start
    raise RuntimeError, "X server failed to start"
RuntimeError: X server failed to start
-----

I also see
-----/var/log/boot.log
  ...
Starting /etc/rc.local Compatibility...
Starting firstboot configuration program (graphical mode)...
Retrigger failed udev eventsStarting cups: Starting mdmonitor:  ^[[1;64r^[(B^[)0^[[1;64r^[[H^[[J^[[1;1HText Mode Setup Utility 1.19.11^[[22C(c) 1999-2006 Red Hat, Inc.^[[26;62H^[[1K ┌────────┤ Choose a Tool ├─────────┐^[[27;62H^[[1K │^[[34C│^[[28;62H^[[1K │   Authentication configuration   │^[[29;62H^[[1K │   Firewall configuration^[[9C│^[[30;62H^[[1K │   Keyboard configuration^[[9C│^[[31;62H^[[1K │   Network configuration^[[10C│^[[32;62H^[[1K │   System services^[[16C│^[[33;62H^[[1K │^[[34C│^[[34;62H^[[1K │^[[6C┌──────────┐  ┌──────┐^[[6C│^[[35;62H^[[1K │^[[6C│ Run Tool │  │ Quit │^[[6C│^[[36;62H^[[1K │^[[6C└──────────┘  └──────┘^[[6C│^[[37;62H^[[1K │^[[34C│^[[38;62H^[[1K │^[[34C│^[[39;62H^[[1K └──────────────────────────────────┘^[[64;5H<Tab>/<Alt-Tab> between elements  |    Use <Enter> to edit a selection^[[28;66H^[[60G[^[[0;31mFAILED^[[0;39m]^M
Starting firstboot configuration program (graphical mode) ^[[1;31mfailed^[[0m.
Starting Display Manager...
-----
which shows two failures to start firstboot in graphical mode.

Comment 4 Adam Williamson 2011-01-11 17:20:12 UTC
firstboot failing to run is quite an important issue, so setting this as high. Is this still happening in current rawhide?



-- 
Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers

Comment 5 John Reiser 2011-01-11 19:56:37 UTC
Installing a DVD of today's rawhide hits anaconda bug 668855 (assertion failure in lu_modules_load after Next from timezone dialog).  Installation fails, so we cannot test firstboot until 668855 is fixed.

Comment 6 John Reiser 2011-01-18 05:12:36 UTC
The firstboot problem has been separated into Bug #670379.

Comment 7 Luke Hutchison 2011-02-16 00:30:01 UTC
I just updated to the latest F14 update packages (for the first time in a month or so), and on reboot Nouveau failed to start with this same error message. I'm currently posting this from console-mode elinks because X won't start!  I would say this constitutes major breakage since F14 is a shipping version.

Comment 8 Luke Hutchison 2011-02-16 00:59:31 UTC
Funnily enough, I did a yum update again right after I posted the above, and there was a new kernel version that fixed the problem. I must have gotten the nouveau update but not the corresponding kernel update the first time I updated.

Comment 9 Matěj Cepl 2011-08-04 21:54:30 UTC
(In reply to comment #2)
> Created attachment 469225 [details]
> Xorg.0.log.old

In function WaitForSomething:
(from frame 4: /usr/bin/Xorg (WaitForSomething+0x183) [0x45aff3])
221: 	    i = -1;
222: 	else if (AnyClientsWriteBlocked)
223: 	{
224: 	    XFD_COPYSET(&ClientsWriteBlocked, &clientsWritable);
225: 	    i = Select (MaxClients, &LastSelectMask, &clientsWritable, NULL, wt);
226: 	}
227: 	else 
228: 	{
229: 	    i = Select (MaxClients, &LastSelectMask, NULL, NULL, wt);
230: 	}
231: >>>>>>> 	selecterr = GetErrno();
232: 	WakeupHandler(i, (pointer)&LastSelectMask);
233: 	SmartScheduleStartTimer ();
234: 	if (i <= 0) /* An error or timeout occurred */
235: 	{
236: 	    if (dispatchException)
237: 		return 0;
238: 	    if (i < 0) 
239: 	    {
240: 		if (selecterr == EBADF)    /* Some client disconnected */
241: 		{


Frame 5: /usr/bin/Xorg (0x400000+0x2d2c2) [0x42d2c2]
	/usr/src/debug/xorg-server-20101201/dix/dispatch.c:369
	Dispatch
Frame 6: /usr/bin/Xorg (0x400000+0x211ca) [0x4211ca]
	/usr/src/debug/xorg-server-20101201/dix/main.c:289
	main

Comment 10 Matěj Cepl 2011-08-04 22:27:06 UTC
There are similar backtraces in bug 728321, bug 727778 (and perhaps bug 703155). Less similar (but perhaps in the same function) are bug 714746 and bug 710564.

Comment 11 Matěj Cepl 2011-08-04 23:04:33 UTC
Fatal server error:
[    70.480] Caught signal 3 (Quit). Server aborting

Comment 12 Ben Skeggs 2011-08-04 23:15:04 UTC
Correct me if i'm wrong, but I think the original part of this bug (lockdep complaint) is fixed now?

Comment 13 John Reiser 2011-08-05 14:38:40 UTC
(In reply to comment #12)
I have not seen the problem since January.

Comment 14 Matěj Cepl 2011-08-08 09:47:38 UTC
Thank you for letting us know. Please, reopen if it happens again.


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