|
@@ -249,6 +249,10 @@ static void __init fpu__init_system_ctx_switch(void)
|
|
|
*/
|
|
|
static void __init fpu__init_parse_early_param(void)
|
|
|
{
|
|
|
+ char arg[32];
|
|
|
+ char *argptr = arg;
|
|
|
+ int bit;
|
|
|
+
|
|
|
if (cmdline_find_option_bool(boot_command_line, "no387"))
|
|
|
setup_clear_cpu_cap(X86_FEATURE_FPU);
|
|
|
|
|
@@ -266,6 +270,13 @@ static void __init fpu__init_parse_early_param(void)
|
|
|
|
|
|
if (cmdline_find_option_bool(boot_command_line, "noxsaves"))
|
|
|
setup_clear_cpu_cap(X86_FEATURE_XSAVES);
|
|
|
+
|
|
|
+ if (cmdline_find_option(boot_command_line, "clearcpuid", arg,
|
|
|
+ sizeof(arg)) &&
|
|
|
+ get_option(&argptr, &bit) &&
|
|
|
+ bit >= 0 &&
|
|
|
+ bit < NCAPINTS * 32)
|
|
|
+ setup_clear_cpu_cap(bit);
|
|
|
}
|
|
|
|
|
|
/*
|