1. 10 8月, 2018 11 次提交
  2. 01 8月, 2018 1 次提交
  3. 22 7月, 2018 1 次提交
    • U
      net: dsa: mv88e6xxx: fix races between lock and irq freeing · 3d82475a
      Uwe Kleine-König 提交于
      free_irq() waits until all handlers for this IRQ have completed. As the
      relevant handler (mv88e6xxx_g1_irq_thread_fn()) takes the chip's reg_lock
      it might never return if the thread calling free_irq() holds this lock.
      
      For the same reason kthread_cancel_delayed_work_sync() in the polling case
      must not hold this lock.
      
      Also first free the irq (or stop the worker respectively) such that
      mv88e6xxx_g1_irq_thread_work() isn't called any more before the irq
      mappings are dropped in mv88e6xxx_g1_irq_free_common() to prevent the
      worker thread to call handle_nested_irq(0) which results in a NULL-pointer
      exception.
      Signed-off-by: NUwe Kleine-König <u.kleine-koenig@pengutronix.de>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      3d82475a
  4. 19 7月, 2018 8 次提交
  5. 01 6月, 2018 1 次提交
  6. 21 5月, 2018 4 次提交
  7. 17 5月, 2018 1 次提交
  8. 15 5月, 2018 3 次提交
  9. 12 5月, 2018 1 次提交
  10. 11 5月, 2018 4 次提交
  11. 08 5月, 2018 1 次提交
  12. 30 4月, 2018 3 次提交
  13. 28 4月, 2018 1 次提交