• Jiri Slaby's avatar
    ATM: iphase, remove sleep-inside-atomic · ec622ab0
    Jiri Slaby authored
    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: default avatarJiri Slaby <jslaby@suse.cz>
    Cc: Chas Williams <chas@cmf.nrl.navy.mil>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    ec622ab0
iphase.c 108 KB