irq_work.h 416 B

1234567891011121314151617181920
  1. #ifndef _LINUX_IRQ_WORK_H
  2. #define _LINUX_IRQ_WORK_H
  3. struct irq_work {
  4. struct irq_work *next;
  5. void (*func)(struct irq_work *);
  6. };
  7. static inline
  8. void init_irq_work(struct irq_work *entry, void (*func)(struct irq_work *))
  9. {
  10. entry->next = NULL;
  11. entry->func = func;
  12. }
  13. bool irq_work_queue(struct irq_work *entry);
  14. void irq_work_run(void);
  15. void irq_work_sync(struct irq_work *entry);
  16. #endif /* _LINUX_IRQ_WORK_H */