| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | #ifndef __ASM_HARDIRQ_H | 
 | 2 | #define __ASM_HARDIRQ_H | 
 | 3 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 4 | #include <linux/threads.h> | 
 | 5 | #include <linux/irq.h> | 
 | 6 |  | 
 | 7 | typedef struct { | 
 | 8 | 	unsigned int __softirq_pending; | 
 | 9 | 	unsigned long idle_timestamp; | 
 | 10 | 	unsigned int __nmi_count;	/* arch dependent */ | 
 | 11 | 	unsigned int apic_timer_irqs;	/* arch dependent */ | 
 | 12 | } ____cacheline_aligned irq_cpustat_t; | 
 | 13 |  | 
 | 14 | DECLARE_PER_CPU(irq_cpustat_t, irq_stat); | 
 | 15 | extern irq_cpustat_t irq_stat[]; | 
 | 16 |  | 
 | 17 | #define __ARCH_IRQ_STAT | 
 | 18 | #define __IRQ_STAT(cpu, member) (per_cpu(irq_stat, cpu).member) | 
 | 19 |  | 
 | 20 | void ack_bad_irq(unsigned int irq); | 
 | 21 | #include <linux/irq_cpustat.h> | 
 | 22 |  | 
 | 23 | #endif /* __ASM_HARDIRQ_H */ |