diff options
author | Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com> | 2009-04-08 12:31:18 +0200 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2009-05-28 09:24:16 -0700 |
commit | 34fa1967aa0827776e37feb5666df0327575a0f2 (patch) | |
tree | 0f2751aad92cb88eca21f70a7eca1be0fabc7c54 | |
parent | 14a02530e2239f753a0f3f089847e723adbdaa47 (diff) | |
download | op-kernel-dev-34fa1967aa0827776e37feb5666df0327575a0f2.zip op-kernel-dev-34fa1967aa0827776e37feb5666df0327575a0f2.tar.gz |
x86, mce: trivial clean up for mce_amd_64.c
Fix for followings:
WARNING: Use #include <linux/percpu.h> instead of <asm/percpu.h>
+#include <asm/percpu.h>
ERROR: Macros with multiple statements should be enclosed in a do - while
loop
+#define THRESHOLD_ATTR(_name, _mode, _show, _store) \
+{ \
+ .attr = {.name = __stringify(_name), .mode = _mode }, \
+ .show = _show, \
+ .store = _store, \
+};
WARNING: usage of NR_CPUS is often wrong - consider using cpu_possible(),
num_possible_cpus(), for_each_possible_cpu(), etc
+ if (cpu >= NR_CPUS)
Signed-off-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Cc: Andi Kleen <andi@firstfloor.org>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
-rw-r--r-- | arch/x86/kernel/cpu/mcheck/mce_amd_64.c | 19 |
1 files changed, 6 insertions, 13 deletions
diff --git a/arch/x86/kernel/cpu/mcheck/mce_amd_64.c b/arch/x86/kernel/cpu/mcheck/mce_amd_64.c index 0c56343..ddae216 100644 --- a/arch/x86/kernel/cpu/mcheck/mce_amd_64.c +++ b/arch/x86/kernel/cpu/mcheck/mce_amd_64.c @@ -16,6 +16,7 @@ #include <linux/interrupt.h> #include <linux/notifier.h> #include <linux/kobject.h> +#include <linux/percpu.h> #include <linux/sysdev.h> #include <linux/errno.h> #include <linux/sched.h> @@ -24,7 +25,6 @@ #include <linux/cpu.h> #include <linux/smp.h> -#include <asm/percpu.h> #include <asm/apic.h> #include <asm/idle.h> #include <asm/mce.h> @@ -344,17 +344,13 @@ static ssize_t store_error_count(struct threshold_block *b, return 1; } -#define THRESHOLD_ATTR(_name, _mode, _show, _store) \ -{ \ - .attr = {.name = __stringify(_name), .mode = _mode }, \ - .show = _show, \ - .store = _store, \ +#define RW_ATTR(val) \ +static struct threshold_attr val = { \ + .attr = {.name = __stringify(val), .mode = 0644 }, \ + .show = show_## val, \ + .store = store_## val, \ }; -#define RW_ATTR(name) \ -static struct threshold_attr name = \ - THRESHOLD_ATTR(name, 0644, show_## name, store_## name) - RW_ATTR(interrupt_enable); RW_ATTR(threshold_limit); RW_ATTR(error_count); @@ -675,9 +671,6 @@ static void threshold_remove_device(unsigned int cpu) static void __cpuinit amd_64_threshold_cpu_callback(unsigned long action, unsigned int cpu) { - if (cpu >= NR_CPUS) - return; - switch (action) { case CPU_ONLINE: case CPU_ONLINE_FROZEN: |