From: Mike Galbraith Date: Wed, 7 Jul 2010 08:29:01 +0000 (+0200) Subject: locking, drivers/dca: Annotate dca_lock as raw X-Git-Tag: v3.2-rc1~166^2~9 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a1741e7fcbc19a67520115df480ab17012cc3d0b;p=pandora-kernel.git locking, drivers/dca: Annotate dca_lock as raw The dca_lock can be taken in atomic context: [ 25.607536] Call Trace: [ 25.607557] [] try_stack_unwind+0x151/0x1a0 [ 25.607566] [] dump_trace+0x92/0x370 [ 25.607573] [] show_trace_log_lvl+0x5c/0x80 [ 25.607578] [] show_trace+0x15/0x20 [ 25.607587] [] dump_stack+0x77/0x8f [ 25.607595] [] __might_sleep+0x11a/0x130 [ 25.607602] [] rt_spin_lock+0x83/0x90 [ 25.607611] [] dca_common_get_tag+0x28/0x80 [dca] [ 25.607622] [] dca3_get_tag+0x18/0x20 [dca] [ 25.607634] [] igb_update_dca+0xb1/0x1d0 [igb] [ 25.607649] [] igb_setup_dca+0x65/0x80 [igb] [ 25.607663] [] igb_probe+0x946/0xe4d [igb] [ 25.607678] [] local_pci_probe+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 --- Reading git-diff-tree failed