.. | .. |
---|
15 | 15 | select CLKSRC_I8253 |
---|
16 | 16 | select CLONE_BACKWARDS |
---|
17 | 17 | select HAVE_DEBUG_STACKOVERFLOW |
---|
18 | | - select KMAP_LOCAL |
---|
19 | 18 | select MODULES_USE_ELF_REL |
---|
20 | 19 | select OLD_SIGACTION |
---|
21 | 20 | select GENERIC_VDSO_32 |
---|
.. | .. |
---|
61 | 60 | select ARCH_32BIT_OFF_T if X86_32 |
---|
62 | 61 | select ARCH_CLOCKSOURCE_INIT |
---|
63 | 62 | select ARCH_HAS_ACPI_TABLE_UPGRADE if ACPI |
---|
| 63 | + select ARCH_HAS_CPU_FINALIZE_INIT |
---|
64 | 64 | select ARCH_HAS_DEBUG_VIRTUAL |
---|
65 | 65 | select ARCH_HAS_DEBUG_VM_PGTABLE if !X86_PAE |
---|
66 | 66 | select ARCH_HAS_DEVMEM_IS_ALLOWED |
---|
.. | .. |
---|
218 | 218 | select HAVE_PCI |
---|
219 | 219 | select HAVE_PERF_REGS |
---|
220 | 220 | select HAVE_PERF_USER_STACK_DUMP |
---|
221 | | - select HAVE_PREEMPT_LAZY |
---|
222 | 221 | select MMU_GATHER_RCU_TABLE_FREE if PARAVIRT |
---|
223 | 222 | select HAVE_POSIX_CPU_TIMERS_TASK_WORK |
---|
224 | 223 | select HAVE_REGS_AND_STACK_ACCESS_API |
---|
.. | .. |
---|
1338 | 1337 | If you select this option, microcode patch loading support for AMD |
---|
1339 | 1338 | processors will be enabled. |
---|
1340 | 1339 | |
---|
1341 | | -config MICROCODE_OLD_INTERFACE |
---|
1342 | | - bool "Ancient loading interface (DEPRECATED)" |
---|
| 1340 | +config MICROCODE_LATE_LOADING |
---|
| 1341 | + bool "Late microcode loading (DANGEROUS)" |
---|
1343 | 1342 | default n |
---|
1344 | 1343 | depends on MICROCODE |
---|
1345 | 1344 | help |
---|
1346 | | - DO NOT USE THIS! This is the ancient /dev/cpu/microcode interface |
---|
1347 | | - which was used by userspace tools like iucode_tool and microcode.ctl. |
---|
1348 | | - It is inadequate because it runs too late to be able to properly |
---|
1349 | | - load microcode on a machine and it needs special tools. Instead, you |
---|
1350 | | - should've switched to the early loading method with the initrd or |
---|
1351 | | - builtin microcode by now: Documentation/x86/microcode.rst |
---|
| 1345 | + Loading microcode late, when the system is up and executing instructions |
---|
| 1346 | + is a tricky business and should be avoided if possible. Just the sequence |
---|
| 1347 | + of synchronizing all cores and SMT threads is one fragile dance which does |
---|
| 1348 | + not guarantee that cores might not softlock after the loading. Therefore, |
---|
| 1349 | + use this at your own risk. Late loading taints the kernel too. |
---|
1352 | 1350 | |
---|
1353 | 1351 | config X86_MSR |
---|
1354 | 1352 | tristate "/dev/cpu/*/msr - Model-specific register support" |
---|
.. | .. |
---|
2485 | 2483 | This mitigates both spectre_v2 and retbleed at great cost to |
---|
2486 | 2484 | performance. |
---|
2487 | 2485 | |
---|
| 2486 | +config CPU_SRSO |
---|
| 2487 | + bool "Mitigate speculative RAS overflow on AMD" |
---|
| 2488 | + depends on CPU_SUP_AMD && X86_64 && RETHUNK |
---|
| 2489 | + default y |
---|
| 2490 | + help |
---|
| 2491 | + Enable the SRSO mitigation needed on AMD Zen1-4 machines. |
---|
| 2492 | + |
---|
2488 | 2493 | config SLS |
---|
2489 | 2494 | bool "Mitigate Straight-Line-Speculation" |
---|
2490 | 2495 | depends on CC_HAS_SLS && X86_64 |
---|
.. | .. |
---|
2494 | 2499 | against straight line speculation. The kernel image might be slightly |
---|
2495 | 2500 | larger. |
---|
2496 | 2501 | |
---|
| 2502 | +config GDS_FORCE_MITIGATION |
---|
| 2503 | + bool "Force GDS Mitigation" |
---|
| 2504 | + depends on CPU_SUP_INTEL |
---|
| 2505 | + default n |
---|
| 2506 | + help |
---|
| 2507 | + Gather Data Sampling (GDS) is a hardware vulnerability which allows |
---|
| 2508 | + unprivileged speculative access to data which was previously stored in |
---|
| 2509 | + vector registers. |
---|
| 2510 | + |
---|
| 2511 | + This option is equivalent to setting gather_data_sampling=force on the |
---|
| 2512 | + command line. The microcode mitigation is used if present, otherwise |
---|
| 2513 | + AVX is disabled as a mitigation. On affected systems that are missing |
---|
| 2514 | + the microcode any userspace code that unconditionally uses AVX will |
---|
| 2515 | + break with this option set. |
---|
| 2516 | + |
---|
| 2517 | + Setting this option on systems not vulnerable to GDS has no effect. |
---|
| 2518 | + |
---|
| 2519 | + If in doubt, say N. |
---|
| 2520 | + |
---|
2497 | 2521 | endif |
---|
2498 | 2522 | |
---|
2499 | 2523 | config ARCH_HAS_ADD_PAGES |
---|