Greetings, I got the below dmesg and the first bad commit is commit 6229dddfed2f129a6e002daaafd8c6b5d7f4f982 Author: Greg Kroah-Hartman AuthorDate: Sat Dec 7 11:44:16 2013 -0700 Commit: Bjorn Helgaas CommitDate: Sat Dec 7 11:44:16 2013 -0700 PCI: Export MSI mode in sysfs using attributes, not kobjects The PCI MSI sysfs code is a mess with kobjects for things that don't really need to be kobjects. This patch creates attributes dynamically for the MSI interrupts instead of using kobjects. [bhelgaas: This also fixes a problem reported by Veaceslav (see link below): calling pci_enable_msi() too soon after pci_disable_msi() can fail with "sysfs: cannot create duplicate filename '.../msi_irqs' because the msi_irqs kset was still active. This can happen with various module unload/reload and bonding scenarios.] Note, this removes a directory from the current MSI interrupt sysfs code: old MSI kobjects: pci_device └── msi_irqs    └── 40    └── mode new MSI attributes: pci_device └── msi_irqs    └── 40 As there was only one file "mode" with the kobject model, the interrupt number is now a file that returns the "mode" of the interrupt (msi vs. msix). [bhelgaas: Neil confirmed that this sysfs change doesn't affect irqbalance because it only cares about the *names* of the entries in msi_irqs/; it doesn't care whether those entries are files or directories. It may break other programs that depend on sysfs layout.] Link: http://lkml.kernel.org/r/1379382464-7920-1-git-send-email-vfalico@redhat.com Signed-off-by: Greg Kroah-Hartman Signed-off-by: Bjorn Helgaas Reviewed-by: Veaceslav Falico Acked-by: Neil Horman +----------------------------------------------------------------+----+ | | | +----------------------------------------------------------------+----+ | boot_successes | 0 | | boot_failures | 19 | | BUG:key_not_in.data | 17 | | WARNING:CPU:PID:at_kernel/locking/lockdep.c:lockdep_init_map() | 17 | | inconsistent_SOFTIRQ-ON-W-IN-SOFTIRQ-W_usage | 2 | +----------------------------------------------------------------+----+ [ 2.212293] virtio-pci 0000:00:04.0: irq 40 for MSI/MSI-X [ 2.213913] virtio-pci 0000:00:04.0: irq 41 for MSI/MSI-X [ 2.215595] BUG: key ffff8800192a6ad0 not in .data! [ 2.217058] ------------[ cut here ]------------ [ 2.218474] WARNING: CPU: 0 PID: 1 at kernel/locking/lockdep.c:2987 lockdep_init_map+0x127/0x462() [ 2.221519] DEBUG_LOCKS_WARN_ON(1) [ 2.222162] Modules linked in: [ 2.224095] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.13.0-rc3-00182-g31e0787 #882 [ 2.226345] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 2.227632] 0000000000000002 ffff88001e6d5968 ffffffff81ae4fad ffff88001e6d59b0 [ 2.229933] ffff88001e6d59a0 ffffffff81071e22 ffffffff810ae405 ffff8800192a6ad0 [ 2.232245] ffff8800192dd8d0 0000000000000000 0000000000000000 ffff88001e6d5a00 [ 2.234549] Call Trace: [ 2.235418] [] dump_stack+0x4d/0x66 [ 2.236638] [] warn_slowpath_common+0x7f/0x98 [ 2.237962] [] ? lockdep_init_map+0x127/0x462 [ 2.239292] [] warn_slowpath_fmt+0x4c/0x4e [ 2.240585] [] lockdep_init_map+0x127/0x462 [ 2.241894] [] ? sysfs_new_dirent+0x8f/0x111 [ 2.243216] [] sysfs_add_file_mode_ns+0x66/0xb4 [ 2.244570] [] internal_create_group+0x153/0x1de [ 2.245942] [] sysfs_create_group+0x13/0x15 [ 2.247259] [] sysfs_create_groups+0x27/0x64 [ 2.248577] [] populate_msi_sysfs+0x165/0x17d [ 2.249906] [] pci_enable_msix+0x2de/0x36b [ 2.251205] [] vp_request_msix_vectors+0xc6/0x217 [ 2.252585] [] vp_try_to_find_vqs+0xa8/0x41f [ 2.253913] [] ? virtblk_probe+0x9a/0x572 [ 2.255198] [] vp_find_vqs+0x35/0x8d [ 2.256443] [] init_vq+0x3f/0x61 [ 2.257618] [] ? virtblk_restore+0x43/0x43 [ 2.258913] [] virtblk_probe+0x126/0x572 [ 2.260183] [] virtio_dev_probe+0xbc/0xfa [ 2.261477] [] driver_probe_device+0x9d/0x1b8 [ 2.262804] [] __driver_attach+0x61/0x83 [ 2.264078] [] ? __device_attach+0x3d/0x3d [ 2.265379] [] bus_for_each_dev+0x80/0x8a [ 2.266664] [] driver_attach+0x1e/0x20 [ 2.267914] [] bus_add_driver+0x10e/0x1d8 [ 2.269197] [] driver_register+0x8e/0xca [ 2.270473] [] register_virtio_driver+0x2b/0x2d [ 2.271829] [] init+0x53/0x85 [ 2.272972] [] ? init_cryptoloop+0x2a/0x2a [ 2.274270] [] do_one_initcall+0x84/0x11a [ 2.275556] [] ? parse_args+0x189/0x249 [ 2.276820] [] kernel_init_freeable+0x1d9/0x25f [ 2.278162] [] ? do_early_param+0x88/0x88 [ 2.279446] [] ? rest_init+0xcd/0xcd [ 2.280668] [] kernel_init+0xe/0x104 [ 2.281896] [] ret_from_fork+0x7c/0xb0 [ 2.283147] [] ? rest_init+0xcd/0xcd [ 2.284374] ---[ end trace bd4d220a7a045ff3 ]--- [ 2.285538] BUG: key ffff8800192a7278 not in .data! git bisect start 31e078736811963afecfe7305a51541cbed8e6a6 374b105797c3d4f29c685f3be535c35f5689b30e -- git bisect bad 77380abb5fc9d79b8158698e52a9abb3de00057c # 11:58 0- 1 Merge 'pci/pci/misc' into devel-xian-x86_64-201312130852 git bisect good ef7aa32df0138c4022db9fdccb6a193f54389330 # 12:44 22+ 1 Merge 'pci/pci/deletion' into devel-xian-x86_64-201312130852 git bisect good b2267e7c13a843935d3688f93bd197b82b871568 # 13:05 22+ 0 Merge 'pci/pci/host-imx6' into devel-xian-x86_64-201312130852 git bisect bad 13de796cf8665bed3dcbf7ac1dc03a17ba479633 # 13:27 0- 2 PCI/portdrv: Remove superfluous name cast git bisect bad 6229dddfed2f129a6e002daaafd8c6b5d7f4f982 # 13:29 0- 4 PCI: Export MSI mode in sysfs using attributes, not kobjects git bisect good 045cc22e53a1a0caaa9a0b6b64246d2690049906 # 13:50 22+ 0 PCI: Clear NumVFs when disabling SR-IOV in sriov_init() # first bad commit: [6229dddfed2f129a6e002daaafd8c6b5d7f4f982] PCI: Export MSI mode in sysfs using attributes, not kobjects git bisect good 045cc22e53a1a0caaa9a0b6b64246d2690049906 # 14:33 66+ 0 PCI: Clear NumVFs when disabling SR-IOV in sriov_init() git bisect bad 31e078736811963afecfe7305a51541cbed8e6a6 # 14:33 0- 19 Merge 'net/master' into devel-xian-x86_64-201312130852 git bisect good b81f81f9d450c0e92bfd746df2364d110784c97c # 14:54 66+ 66 Revert "PCI: Export MSI mode in sysfs using attributes, not kobjects" git bisect good 8d2763770c34e8ed771f0be86760eb4485febc05 # 15:19 66+ 0 Merge branch 'akpm' (fixes from Andrew) git bisect bad 1a63d5777d237952bb06f1a2481c3acc366aeb8d # 15:20 0- 9 Add linux-next specific files for 20131213 Thanks, Fengguang