• J
    ATM: iphase, remove sleep-inside-atomic · ec622ab0
    Jiri Slaby 提交于
    Stanse found that ia_init_one locks a spinlock and inside of that it
    calls ia_start which calls:
    * request_irq
    * tx_init which does kmalloc(GFP_KERNEL)
    
    Both of them can thus sleep and result in a deadlock. I don't see a
    reason to have a per-device spinlock there which is used only there
    and inited right before the lock location. So remove it completely.
    Signed-off-by: NJiri Slaby <jslaby@suse.cz>
    Cc: Chas Williams <chas@cmf.nrl.navy.mil>
    Signed-off-by: NDavid S. Miller <davem@davemloft.net>
    ec622ab0
iphase.h 55.9 KB