diff options
Diffstat (limited to 'arch/x86/kernel/cpu/common.c')
-rw-r--r-- | arch/x86/kernel/cpu/common.c | 22 |
1 files changed, 0 insertions, 22 deletions
diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c index 0948fc25446a..482f74859fb7 100644 --- a/arch/x86/kernel/cpu/common.c +++ b/arch/x86/kernel/cpu/common.c | |||
@@ -366,22 +366,6 @@ out: | |||
366 | cr4_clear_bits(X86_CR4_UMIP); | 366 | cr4_clear_bits(X86_CR4_UMIP); |
367 | } | 367 | } |
368 | 368 | ||
369 | static __init int x86_nofsgsbase_setup(char *arg) | ||
370 | { | ||
371 | /* Require an exact match without trailing characters. */ | ||
372 | if (strlen(arg)) | ||
373 | return 0; | ||
374 | |||
375 | /* Do not emit a message if the feature is not present. */ | ||
376 | if (!boot_cpu_has(X86_FEATURE_FSGSBASE)) | ||
377 | return 1; | ||
378 | |||
379 | setup_clear_cpu_cap(X86_FEATURE_FSGSBASE); | ||
380 | pr_info("FSGSBASE disabled via kernel command line\n"); | ||
381 | return 1; | ||
382 | } | ||
383 | __setup("nofsgsbase", x86_nofsgsbase_setup); | ||
384 | |||
385 | /* | 369 | /* |
386 | * Protection Keys are not available in 32-bit mode. | 370 | * Protection Keys are not available in 32-bit mode. |
387 | */ | 371 | */ |
@@ -1387,12 +1371,6 @@ static void identify_cpu(struct cpuinfo_x86 *c) | |||
1387 | setup_smap(c); | 1371 | setup_smap(c); |
1388 | setup_umip(c); | 1372 | setup_umip(c); |
1389 | 1373 | ||
1390 | /* Enable FSGSBASE instructions if available. */ | ||
1391 | if (cpu_has(c, X86_FEATURE_FSGSBASE)) { | ||
1392 | cr4_set_bits(X86_CR4_FSGSBASE); | ||
1393 | elf_hwcap2 |= HWCAP2_FSGSBASE; | ||
1394 | } | ||
1395 | |||
1396 | /* | 1374 | /* |
1397 | * The vendor-specific functions might have changed features. | 1375 | * The vendor-specific functions might have changed features. |
1398 | * Now we do "generic changes." | 1376 | * Now we do "generic changes." |