aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86
diff options
context:
space:
mode:
authorAndi Kleen <ak@suse.de>2008-01-30 07:33:21 -0500
committerIngo Molnar <mingo@elte.hu>2008-01-30 07:33:21 -0500
commitac72e7888a612dccfbc15b34698aad441bdfda10 (patch)
treeabd99cb2ad8ddfd7f695bcfbe6eb9b6e1183ed3d /arch/x86
parent191679fdfa63342752ff6a094a2522ae939b8d0c (diff)
x86: add generic clearcpuid=... option
Add a generic option to clear any cpuid bit. I added it because it was very easy to add with the new generic cpuid disable bitmap and perhaps it will be useful in the future. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/x86')
-rw-r--r--arch/x86/kernel/cpu/common.c11
-rw-r--r--arch/x86/kernel/setup_64.c11
2 files changed, 22 insertions, 0 deletions
diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
index 56b7ea8e6c79..56cc341cc586 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -572,6 +572,17 @@ void __cpuinit print_cpu_info(struct cpuinfo_x86 *c)
572 printk("\n"); 572 printk("\n");
573} 573}
574 574
575static __init int setup_disablecpuid(char *arg)
576{
577 int bit;
578 if (get_option(&arg, &bit) && bit < NCAPINTS*32)
579 setup_clear_cpu_cap(bit);
580 else
581 return 0;
582 return 1;
583}
584__setup("clearcpuid=", setup_disablecpuid);
585
575cpumask_t cpu_initialized __cpuinitdata = CPU_MASK_NONE; 586cpumask_t cpu_initialized __cpuinitdata = CPU_MASK_NONE;
576 587
577/* This is hacky. :) 588/* This is hacky. :)
diff --git a/arch/x86/kernel/setup_64.c b/arch/x86/kernel/setup_64.c
index cb9b8a90c094..79635b7bd57a 100644
--- a/arch/x86/kernel/setup_64.c
+++ b/arch/x86/kernel/setup_64.c
@@ -1050,6 +1050,17 @@ void __cpuinit print_cpu_info(struct cpuinfo_x86 *c)
1050 printk(KERN_CONT "\n"); 1050 printk(KERN_CONT "\n");
1051} 1051}
1052 1052
1053static __init int setup_disablecpuid(char *arg)
1054{
1055 int bit;
1056 if (get_option(&arg, &bit) && bit < NCAPINTS*32)
1057 setup_clear_cpu_cap(bit);
1058 else
1059 return 0;
1060 return 1;
1061}
1062__setup("clearcpuid=", setup_disablecpuid);
1063
1053/* 1064/*
1054 * Get CPU information for use by the procfs. 1065 * Get CPU information for use by the procfs.
1055 */ 1066 */