• M
    xtensa: ISS: fix locking in TAP network adapter · 24e94454
    Max Filippov 提交于
    - don't lock lp->lock in the iss_net_timer for the call of iss_net_poll,
      it will lock it itself;
    - invert order of lp->lock and opened_lock acquisition in the
      iss_net_open to make it consistent with iss_net_poll;
    - replace spin_lock with spin_lock_bh when acquiring locks used in
      iss_net_timer from non-atomic context;
    - replace spin_lock_irqsave with spin_lock_bh in the iss_net_start_xmit
      as the driver doesn't use lp->lock in the hard IRQ context;
    - replace __SPIN_LOCK_UNLOCKED(lp.lock) with spin_lock_init, otherwise
      lockdep is unhappy about using non-static key.
    
    Cc: <stable@vger.kernel.org>
    Signed-off-by: NMax Filippov <jcmvbkbc@gmail.com>
    24e94454
network.c 14.5 KB