diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2009-08-20 06:05:01 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2009-08-27 11:12:52 -0400 |
commit | f4848472cd99487e182b64fb2a5d0e4fedbe86ad (patch) | |
tree | d407ce2579e01beca7bee81df5fa3dbfe99cc512 /arch/x86/include/asm/x86_init.h | |
parent | 6b18ae3e2ff62daa9f181401759161dd8de0aadf (diff) |
x86: Sanitize smp_record and move it to x86_init_ops
The x86 quirkification introduced an extra ugly hackery with a
variable pointer in the mpparse code. If the pointer is initialized
then it is dereferenced and the variable set to 0 or incremented.
Create a x86_init_ops function and let the affected numaq code
hold the function. Default init is a setup noop.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/x86/include/asm/x86_init.h')
-rw-r--r-- | arch/x86/include/asm/x86_init.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/arch/x86/include/asm/x86_init.h b/arch/x86/include/asm/x86_init.h index 6c084f2a6c3f..10b297b1881a 100644 --- a/arch/x86/include/asm/x86_init.h +++ b/arch/x86/include/asm/x86_init.h | |||
@@ -2,6 +2,14 @@ | |||
2 | #define _ASM_X86_PLATFORM_H | 2 | #define _ASM_X86_PLATFORM_H |
3 | 3 | ||
4 | /** | 4 | /** |
5 | * struct x86_init_mpparse - platform specific mpparse ops | ||
6 | * @mpc_record: platform specific mpc record accounting | ||
7 | */ | ||
8 | struct x86_init_mpparse { | ||
9 | void (*mpc_record)(unsigned int mode); | ||
10 | }; | ||
11 | |||
12 | /** | ||
5 | * struct x86_init_resources - platform specific resource related ops | 13 | * struct x86_init_resources - platform specific resource related ops |
6 | * @probe_roms: probe BIOS roms | 14 | * @probe_roms: probe BIOS roms |
7 | * @reserve_resources: reserve the standard resources for the | 15 | * @reserve_resources: reserve the standard resources for the |
@@ -22,11 +30,13 @@ struct x86_init_resources { | |||
22 | * | 30 | * |
23 | */ | 31 | */ |
24 | struct x86_init_ops { | 32 | struct x86_init_ops { |
25 | struct x86_init_resources resources; | 33 | struct x86_init_resources resources; |
34 | struct x86_init_mpparse mpparse; | ||
26 | }; | 35 | }; |
27 | 36 | ||
28 | extern struct x86_init_ops x86_init; | 37 | extern struct x86_init_ops x86_init; |
29 | 38 | ||
30 | extern void x86_init_noop(void); | 39 | extern void x86_init_noop(void); |
40 | extern void x86_init_uint_noop(unsigned int unused); | ||
31 | 41 | ||
32 | #endif | 42 | #endif |