android_kernel_xiaomi_sm8450/arch/x86
Pawan Gupta 6f44a5fc15 x86/entry_32: Clear CPU buffers after register restore in NMI return
commit 48a2440d0f20c826b884e04377ccc1e4696c84e9 upstream.

CPU buffers are currently cleared after call to exc_nmi, but before
register state is restored. This may be okay for MDS mitigation but not for
RDFS. Because RDFS mitigation requires CPU buffers to be cleared when
registers don't have any sensitive data.

Move CLEAR_CPU_BUFFERS after RESTORE_ALL_NMI.

Fixes: a0e2dab44d22 ("x86/entry_32: Add VERW just before userspace transition")
Suggested-by: Dave Hansen <dave.hansen@linux.intel.com>
Signed-off-by: Pawan Gupta <pawan.kumar.gupta@linux.intel.com>
Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
Cc:stable@vger.kernel.org
Link: https://lore.kernel.org/all/20240925-fix-dosemu-vm86-v7-2-1de0daca2d42%40linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-10-22 15:39:29 +02:00
..
boot x86/boot: Ignore NMIs during very early boot 2024-02-23 08:42:02 +01:00
configs x86/kbuild: Enable CONFIG_KALLSYMS_ALL=y in the defconfigs 2022-01-27 10:54:21 +01:00
crypto crypto: x86/sha256-avx2 - add missing vzeroupper 2024-06-16 13:32:02 +02:00
entry x86/entry_32: Clear CPU buffers after register restore in NMI return 2024-10-22 15:39:29 +02:00
events perf/x86/intel/pt: Fix sampling synchronization 2024-10-17 15:08:02 +02:00
hyperv x86/hyperv: Remove unregister syscore call from Hyper-V cleanup 2023-01-14 10:16:13 +01:00
ia32 x86: remove address space overrides using set_fs() 2020-09-08 22:21:36 -04:00
include x86/cpufeatures: Add a IBPB_NO_RET BUG flag 2024-10-22 15:39:25 +02:00
kernel x86/apic: Always explicitly disarm TSC-deadline timer 2024-10-22 15:39:29 +02:00
kvm KVM: VMX: Split out the non-virtualization part of vmx_interrupt_blocked() 2024-08-19 05:40:58 +02:00
lib x86/retpoline: Move a NOENDBR annotation to the SRSO dummy return thunk 2024-07-18 13:05:50 +02:00
math-emu x86: Prepare asm files for straight-line-speculation 2022-07-25 11:26:28 +02:00
mm x86/mm: Switch to new Intel CPU model defines 2024-10-17 15:07:58 +02:00
net x86/returnthunk: Allow different return thunks 2024-03-01 13:16:49 +01:00
oprofile
pci x86/pci/xen: Fix PCIBIOS_* return code handling 2024-08-19 05:40:40 +02:00
platform x86/platform/iosf_mbi: Convert PCIBIOS_* return codes to errnos 2024-08-19 05:40:40 +02:00
power x86/stackprotector/32: Make the canary into a regular percpu variable 2024-04-13 12:58:45 +02:00
purgatory x86/purgatory: Switch to the position-independent small code model 2024-06-16 13:32:06 +02:00
ras treewide: replace '---help---' in Kconfig files with 'help' 2020-06-14 01:57:21 +09:00
realmode x86/mm: Flush global TLB when switching to trampoline page-table 2022-01-27 10:54:14 +01:00
tools x86/boot: Ignore relocations in .notes sections in walk_relocs() too 2024-06-16 13:32:03 +02:00
um x86: um: vdso: Add '%rcx' and '%r11' to the syscall clobber list 2023-03-11 16:40:11 +01:00
video
xen xen: use correct end address of kernel for conflict checking 2024-10-17 15:07:48 +02:00
.gitignore
Kbuild
Kconfig cpu: Re-enable CPU mitigations by default for !X86 architectures 2024-05-02 16:23:44 +02:00
Kconfig.assembler x86/delay: Introduce TPAUSE delay 2020-05-07 16:06:20 +02:00
Kconfig.cpu x86/Kconfig: Transmeta Crusoe is CPU family 5, not 6 2024-02-23 08:42:28 +01:00
Kconfig.debug x86/kconfig: Select ARCH_WANT_FRAME_POINTERS again when UNWINDER_FRAME_POINTER=y 2024-06-16 13:32:26 +02:00
Makefile x86/stackprotector/32: Make the canary into a regular percpu variable 2024-04-13 12:58:45 +02:00
Makefile_32.cpu
Makefile.um um: allow not setting extra rpaths in the linux binary 2024-03-15 10:48:18 -04:00