softirq.h
上传用户:jlfgdled
上传日期:2013-04-10
资源大小:33168k
文件大小:1k
源码类别:

Linux/Unix编程

开发平台:

Unix_Linux

  1. /*
  2.  * BK Id: SCCS/s.softirq.h 1.13 07/12/01 20:02:34 paulus
  3.  */
  4. #ifdef __KERNEL__
  5. #ifndef __ASM_SOFTIRQ_H
  6. #define __ASM_SOFTIRQ_H
  7. #include <asm/atomic.h>
  8. #include <asm/hardirq.h>
  9. #define local_bh_disable()
  10. do {
  11. local_bh_count(smp_processor_id())++;
  12. barrier();
  13. } while (0)
  14. #define __local_bh_enable()
  15. do {
  16. barrier();
  17. local_bh_count(smp_processor_id())--;
  18. } while (0)
  19. #define local_bh_enable()
  20. do {
  21. if (!--local_bh_count(smp_processor_id())
  22.     && softirq_pending(smp_processor_id())) {
  23. do_softirq();
  24. }
  25. } while (0)
  26. #define in_softirq() (local_bh_count(smp_processor_id()) != 0)
  27. #endif /* __ASM_SOFTIRQ_H */
  28. #endif /* __KERNEL__ */