kernel_samsung_a53x/arch/x86/kernel/cpu
Pawan Gupta 19daabcfbb x86/rfds: Mitigate Register File Data Sampling (RFDS)
commit 8076fcde016c9c0e0660543e67bff86cb48a7c9c upstream.

RFDS is a CPU vulnerability that may allow userspace to infer kernel
stale data previously used in floating point registers, vector registers
and integer registers. RFDS only affects certain Intel Atom processors.

Intel released a microcode update that uses VERW instruction to clear
the affected CPU buffers. Unlike MDS, none of the affected cores support
SMT.

Add RFDS bug infrastructure and enable the VERW based mitigation by
default, that clears the affected buffers just before exiting to
userspace. Also add sysfs reporting and cmdline parameter
"reg_file_data_sampling" to control the mitigation.

For details see:
Documentation/admin-guide/hw-vuln/reg-file-data-sampling.rst

  [ pawan: - Resolved conflicts in sysfs reporting.
	   - s/ATOM_GRACEMONT/ALDERLAKE_N/ATOM_GRACEMONT is called
	     ALDERLAKE_N in 6.6. ]

Signed-off-by: Pawan Gupta <pawan.kumar.gupta@linux.intel.com>
Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Josh Poimboeuf <jpoimboe@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-11-19 09:22:40 +01:00
..
mce x86/mce: Mark fatal MCE's page as poison to avoid panic in the kdump kernel 2024-11-18 12:13:08 +01:00
microcode Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mtrr Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
resctrl Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
acrn.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
amd.c x86/CPU/AMD: Update the Zenbleed microcode revisions 2024-11-19 09:22:36 +01:00
aperfmperf.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bugs.c x86/rfds: Mitigate Register File Data Sampling (RFDS) 2024-11-19 09:22:40 +01:00
cacheinfo.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
centaur.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
common.c x86/rfds: Mitigate Register File Data Sampling (RFDS) 2024-11-19 09:22:40 +01:00
cpu.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
cpuid-deps.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
cyrix.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
feat_ctl.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
hygon.c x86/cpu/hygon: Fix the CPU topology evaluation for real 2024-11-18 11:43:21 +01:00
hypervisor.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
intel.c x86/cpu/intel: Detect TME keyid bits before setting MTRR mask registers 2024-11-18 23:18:30 +01:00
intel_epb.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
intel_pconfig.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Makefile Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
match.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mkcapflags.sh Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mshyperv.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
perfctr-watchdog.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
powerflags.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
proc.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rdrand.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
scattered.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
topology.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
transmeta.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
tsx.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
umc.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
umwait.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
vmware.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
zhaoxin.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00