locking, drivers/dca: Annotate dca_lock as raw
The dca_lock can be taken in atomic context:
[ 25.607536] Call Trace:
[ 25.607557] [<
ffffffff820078a1>] try_stack_unwind+0x151/0x1a0
[ 25.607566] [<
ffffffff820062c2>] dump_trace+0x92/0x370
[ 25.607573] [<
ffffffff8200731c>] show_trace_log_lvl+0x5c/0x80
[ 25.607578] [<
ffffffff82007355>] show_trace+0x15/0x20
[ 25.607587] [<
ffffffff823f4588>] dump_stack+0x77/0x8f
[ 25.607595] [<
ffffffff82043f2a>] __might_sleep+0x11a/0x130
[ 25.607602] [<
ffffffff823f7b93>] rt_spin_lock+0x83/0x90
[ 25.607611] [<
ffffffffa0209138>] dca_common_get_tag+0x28/0x80 [dca]
[ 25.607622] [<
ffffffffa02091c8>] dca3_get_tag+0x18/0x20 [dca]
[ 25.607634] [<
ffffffffa0244e71>] igb_update_dca+0xb1/0x1d0 [igb]
[ 25.607649] [<
ffffffffa0244ff5>] igb_setup_dca+0x65/0x80 [igb]
[ 25.607663] [<
ffffffffa02535a6>] igb_probe+0x946/0xe4d [igb]
[ 25.607678] [<
ffffffff82247517>] local_pci_probe+0x17/0x20
[ 25.607686] [<
ffffffff82248661>] pci_device_probe+0x121/0x130
[ 25.607699] [<
ffffffff822e4832>] driver_probe_device+0xd2/0x2e0
[ 25.607707] [<
ffffffff822e4adb>] __driver_attach+0x9b/0xa0
[ 25.607714] [<
ffffffff822e3d1b>] bus_for_each_dev+0x6b/0xa0
[ 25.607720] [<
ffffffff822e4591>] driver_attach+0x21/0x30
[ 25.607727] [<
ffffffff822e3425>] bus_add_driver+0x1e5/0x350
[ 25.607734] [<
ffffffff822e4e41>] driver_register+0x81/0x160
[ 25.607742] [<
ffffffff8224890f>] __pci_register_driver+0x6f/0xf0
[ 25.607752] [<
ffffffffa011505b>] igb_init_module+0x5b/0x5d [igb]
[ 25.607769] [<
ffffffff820001dd>] do_one_initcall+0x3d/0x1a0
[ 25.607778] [<
ffffffff820961f6>] sys_init_module+0xe6/0x270
[ 25.607786] [<
ffffffff82003232>] 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 <efault@gmx.de>
[ Fixed the domain allocation which was calling kzalloc from the irq disabled section ]
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>