summaryrefslogtreecommitdiffstats
path: root/arch/x86/include/asm/hardirq.h
diff options
context:
space:
mode:
authorBrian Gerst <brgerst@gmail.com>2009-01-23 03:03:32 +0100
committerTejun Heo <tj@kernel.org>2009-01-23 03:03:32 +0100
commit2de3a5f7956eb81447feea3aec68193ddd8534bb (patch)
tree492a94d72e54977b2295c6d8fe1663af4d752a33 /arch/x86/include/asm/hardirq.h
parentx86: merge hardirq_{32,64}.h into hardirq.h (diff)
downloadlinux-2de3a5f7956eb81447feea3aec68193ddd8534bb.tar.xz
linux-2de3a5f7956eb81447feea3aec68193ddd8534bb.zip
x86: make irq_cpustat_t fields conditional
Impact: shrink size of irq_cpustat_t when possible Signed-off-by: Brian Gerst <brgerst@gmail.com> Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'arch/x86/include/asm/hardirq.h')
-rw-r--r--arch/x86/include/asm/hardirq.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/arch/x86/include/asm/hardirq.h b/arch/x86/include/asm/hardirq.h
index f4a95f20f8ec..176f058e7159 100644
--- a/arch/x86/include/asm/hardirq.h
+++ b/arch/x86/include/asm/hardirq.h
@@ -7,14 +7,22 @@
typedef struct {
unsigned int __softirq_pending;
unsigned int __nmi_count; /* arch dependent */
- unsigned int apic_timer_irqs; /* arch dependent */
unsigned int irq0_irqs;
+#ifdef CONFIG_X86_LOCAL_APIC
+ unsigned int apic_timer_irqs; /* arch dependent */
+ unsigned int irq_spurious_count;
+#endif
+#ifdef CONFIG_SMP
unsigned int irq_resched_count;
unsigned int irq_call_count;
unsigned int irq_tlb_count;
+#endif
+#ifdef CONFIG_X86_MCE
unsigned int irq_thermal_count;
- unsigned int irq_spurious_count;
+# ifdef CONFIG_X86_64
unsigned int irq_threshold_count;
+# endif
+#endif
} ____cacheline_aligned irq_cpustat_t;
DECLARE_PER_CPU(irq_cpustat_t, irq_stat);