Hi Jesse, Here is another warning message introduced by the same commit: git://people.freedesktop.org/~jbarnes/linux async-fb-probe commit b739c9982801e5f76097311b67dfd76891b10988 Author: Jesse Barnes AuthorDate: Wed May 28 10:21:17 2014 -0700 Commit: Jesse Barnes CommitDate: Wed May 28 12:17:34 2014 -0700 drm: take modeset locks around initial fb helper probing Drivers ought to complain otherwise. Signed-off-by: Jesse Barnes +------------------------------------------+------------+------------+------------------+ | | 071f9c57ee | b739c99828 | v3.15-rc8_060210 | +------------------------------------------+------------+------------+------------------+ | boot_successes | 60 | 0 | 0 | | boot_failures | 0 | 20 | 13 | | INFO:possible_recursive_locking_detected | 0 | 20 | 13 | | BUG:kernel_boot_hang | 0 | 20 | 13 | | backtrace:drm_fb_helper_initial_config | 0 | 20 | 13 | | backtrace:cirrus_fbdev_init | 0 | 20 | 13 | | backtrace:cirrus_modeset_init | 0 | 20 | 13 | | backtrace:__pci_register_driver | 0 | 20 | 13 | | backtrace:drm_pci_init | 0 | 20 | 13 | | backtrace:cirrus_init | 0 | 20 | 13 | | backtrace:kernel_init_freeable | 0 | 20 | 13 | +------------------------------------------+------------+------------+------------------+ [ 3.631605] [TTM] Initializing DMA pool allocator [ 3.633678] [ 3.634003] ============================================= [ 3.634003] [ INFO: possible recursive locking detected ] [ 3.634003] 3.15.0-rc5-00090-gb739c99 #1 Not tainted [ 3.634003] --------------------------------------------- [ 3.634003] swapper/0/1 is trying to acquire lock: [ 3.634003] (&dev->mode_config.mutex){+.+.+.}, at: [] drm_modeset_lock_all+0x35/0x80 [ 3.634003] [ 3.634003] but task is already holding lock: [ 3.634003] (&dev->mode_config.mutex){+.+.+.}, at: [] drm_fb_helper_initial_config+0x119/0x730 [ 3.634003] [ 3.634003] other info that might help us debug this: [ 3.634003] Possible unsafe locking scenario: [ 3.634003] [ 3.634003] CPU0 [ 3.634003] ---- [ 3.634003] lock(&dev->mode_config.mutex); [ 3.634003] lock(&dev->mode_config.mutex); [ 3.634003] [ 3.634003] *** DEADLOCK *** [ 3.634003] [ 3.634003] May be due to missing lock nesting notation [ 3.634003] [ 3.634003] 4 locks held by swapper/0/1: [ 3.634003] #0: (&dev->mutex){......}, at: [] __driver_attach+0x73/0x100 [ 3.634003] #1: (&dev->mutex){......}, at: [] __driver_attach+0x89/0x100 [ 3.634003] #2: (drm_global_mutex){+.+.+.}, at: [] drm_dev_register+0x2a/0x1c0 [ 3.634003] #3: (&dev->mode_config.mutex){+.+.+.}, at: [] drm_fb_helper_initial_config+0x119/0x730 [ 3.634003] [ 3.634003] stack backtrace: [ 3.634003] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 3.15.0-rc5-00090-gb739c99 #1 [ 3.634003] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 3.634003] ffff8800121807a8 ffff8800121839e8 ffffffff82752935 ffff880012180010 [ 3.634003] ffff880012183a58 ffffffff8113c027 0000000000000000 ffff8800121807a8 [ 3.634003] ffff880012183a78 ffffffff00000000 27e13f0d1869834c 0000000000000a00 [ 3.634003] Call Trace: [ 3.634003] [] dump_stack+0x85/0xba [ 3.634003] [] __lock_acquire+0x1f37/0x22c0 [ 3.634003] [] lock_acquire+0xeb/0x1c0 [ 3.634003] [] ? drm_modeset_lock_all+0x35/0x80 [ 3.634003] [] mutex_lock_nested+0x85/0x600 [ 3.634003] [] ? drm_modeset_lock_all+0x35/0x80 [ 3.634003] [] ? trace_hardirqs_on+0x1d/0x30 [ 3.634003] [] ? drm_fb_helper_initial_config+0x119/0x730 [ 3.634003] [] ? fb_get_options+0x2b/0x240 [ 3.634003] [] drm_modeset_lock_all+0x35/0x80 [ 3.634003] [] drm_fb_helper_initial_config+0x129/0x730 [ 3.634003] [] ? trace_hardirqs_on+0x1d/0x30 [ 3.634003] [] ? drm_modeset_unlock_all+0x6a/0x80 [ 3.634003] [] cirrus_fbdev_init+0xcd/0x110 [ 3.634003] [] cirrus_modeset_init+0x234/0x2d0 [ 3.634003] [] cirrus_driver_load+0x96/0x1a0 [ 3.634003] [] drm_dev_register+0x115/0x1c0 [ 3.634003] [] drm_get_pci_dev+0x138/0x320 [ 3.634003] [] ? trace_hardirqs_on+0x1d/0x30 [ 3.634003] [] cirrus_pci_probe+0x105/0x140 [ 3.634003] [] pci_device_probe+0xe0/0x1c0 [ 3.634003] [] driver_probe_device+0xcc/0x580 [ 3.634003] [] __driver_attach+0xeb/0x100 [ 3.634003] [] ? driver_probe_device+0x580/0x580 [ 3.634003] [] bus_for_each_dev+0xb3/0x110 [ 3.634003] [] driver_attach+0x26/0x30 [ 3.634003] [] bus_add_driver+0x208/0x390 [ 3.634003] [] ? intel_no_lvds_dmi_callback+0x2b/0x2b [ 3.634003] [] driver_register+0xb0/0x1a0 [ 3.634003] [] ? intel_no_lvds_dmi_callback+0x2b/0x2b [ 3.634003] [] __pci_register_driver+0x6d/0x80 [ 3.634003] [] drm_pci_init+0x149/0x180 [ 3.634003] [] ? intel_no_lvds_dmi_callback+0x2b/0x2b [ 3.634003] [] cirrus_init+0x63/0x6c [ 3.634003] [] do_one_initcall+0xe8/0x1cc [ 3.634003] [] ? parse_args+0x2a5/0x5c0 [ 3.634003] [] kernel_init_freeable+0x1ca/0x2c9 [ 3.634003] [] ? do_early_param+0xd7/0xd7 [ 3.634003] [] ? rest_init+0x120/0x120 [ 3.634003] [] kernel_init+0x16/0x1b0 [ 3.634003] [] ret_from_fork+0x7c/0xb0 [ 3.634003] [] ? rest_init+0x120/0x120 [ 61.168100] spin_lock-torture: Writes: Total: 4 Max/Min: 0/0 Fail: 0 [ 121.169074] spin_lock-torture: Writes: Total: 4 Max/Min: 0/0 Fail: 0 [ 181.170111] spin_lock-torture: Writes: Total: 4 Max/Min: 0/0 Fail: 0 git bisect start 5dba024fe84a491ec3ca15193923fcbb938e68f7 fad01e866afdbe01a1f3ec06a39c3a8b9e197014 -- git bisect good 12072cdd5c9b56bb6d4169c5a52c9d0bf64b7f84 # 12:04 19+ 0 Merge 'gxt/unicore32' into devel-hourly-2014060210 git bisect good eb1a12ad1d5a7312a6f3dc6a8b77c51cbe58641e # 12:10 19+ 0 Merge 'luto/auditsc-lite' into devel-hourly-2014060210 git bisect good d641155270aff21eacd2622e30129cd91fe8d2d2 # 12:23 19+ 0 Merge 'wsa/i2c/for-next' into devel-hourly-2014060210 git bisect good 002fa82dac6f0be486333e6424968c0c42c0e799 # 12:30 19+ 0 Merge 'jbarnes/async' into devel-hourly-2014060210 git bisect bad 1ea52a9605be1234b7da3e4d134917c7ba3be93d # 12:57 0- 19 Merge 'jbarnes/async-fb-probe' into devel-hourly-2014060210 git bisect bad f728080d6bac47aab2d570492acef88317ac8e03 # 13:52 0- 15 drm/i915: make fbdev initialization asynchronous v2 git bisect bad b739c9982801e5f76097311b67dfd76891b10988 # 14:13 0- 5 drm: take modeset locks around initial fb helper probing # first bad commit: [b739c9982801e5f76097311b67dfd76891b10988] drm: take modeset locks around initial fb helper probing git bisect good 071f9c57eea4876288ba1254c9ac3b0f077c2dd6 # 14:30 60+ 0 drm/i915/vlv: enable PPGTT git bisect bad 5dba024fe84a491ec3ca15193923fcbb938e68f7 # 14:30 0- 13 0day head guard for 'devel-hourly-2014060210' git bisect good fad01e866afdbe01a1f3ec06a39c3a8b9e197014 # 14:42 60+ 1 Linux 3.15-rc8 git bisect good 322c030f5462a44ce42f8804284eb52b7cd2ba41 # 14:55 60+ 7 Add linux-next specific files for 20140530 This script may reproduce the error. ----------------------------------------------------------------------------- #!/bin/bash kernel=$1 initrd=quantal-core-x86_64.cgz wget --no-clobber https://github.com/fengguang/reproduce-kernel-bug/blob/master/initrd/$initrd kvm=( qemu-system-x86_64 -cpu kvm64 -enable-kvm -kernel $kernel -initrd $initrd -smp 2 -m 256M -net nic,vlan=0,macaddr=00:00:00:00:00:00,model=virtio -net user,vlan=0 -net nic,vlan=1,model=e1000 -net user,vlan=1 -boot order=nc -no-reboot -watchdog i6300esb -serial stdio -display none -monitor null ) append=( debug sched_debug apic=debug ignore_loglevel sysrq_always_enabled panic=10 prompt_ramdisk=0 earlyprintk=ttyS0,115200 console=ttyS0,115200 console=tty0 vga=normal root=/dev/ram0 rw ) "${kvm[@]}" --append "${append[*]}" ----------------------------------------------------------------------------- Thanks, Fengguang