be+0x17/0x20 [ 25.607686] [] pci_device_probe+0x121/0x130 [ 25.607699] [] driver_probe_device+0xd2/0x2e0 [ 25.607707] [] __driver_attach+0x9b/0xa0 [ 25.607714] [] bus_for_each_dev+0x6b/0xa0 [ 25.607720] [] driver_attach+0x21/0x30 [ 25.607727] [] bus_add_driver+0x1e5/0x350 [ 25.607734] [] driver_register+0x81/0x160 [ 25.607742] [] __pci_register_driver+0x6f/0xf0 [ 25.607752] [] igb_init_module+0x5b/0x5d [igb] [ 25.607769] [] do_one_initcall+0x3d/0x1a0 [ 25.607778] [] sys_init_module+0xe6/0x270 [ 25.607786] [] system_call_fastpath+0x16/0x1b [ 25.607794] [<00007f84d6783f4a>] 0x7f84d6783f4a and thus must not be preempted on -rt. In mainline this change documents the low level nature of the lock - otherwise there's no functional difference. Lockdep and Sparse checking will work as usual. Signed-off-by: Mike Galbraith [ Fixed the domain allocation which was calling kzalloc from the irq disabled section ] Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar ×­à‚•/x