2
0
mirror of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git synced 2025-09-04 20:19:47 +08:00
linux/arch/x86/boot/compressed
Ashish Kalra f30470c190 x86/boot: Skip video memory access in the decompressor for SEV-ES/SNP
Accessing guest video memory/RAM in the decompressor causes guest
termination as the boot stage2 #VC handler for SEV-ES/SNP systems does
not support MMIO handling.

This issue is observed during a SEV-ES/SNP guest kexec as kexec -c adds
screen_info to the boot parameters passed to the second kernel, which
causes console output to be dumped to both video and serial.

As the decompressor output gets cleared really fast, it is preferable to
get the console output only on serial, hence, skip accessing the video
RAM during decompressor stage to prevent guest termination.

Serial console output during decompressor stage works as boot stage2 #VC
handler already supports handling port I/O.

  [ bp: Massage. ]

Suggested-by: Borislav Petkov (AMD) <bp@alien8.de>
Suggested-by: Thomas Lendacky <thomas.lendacky@amd.com>
Signed-off-by: Ashish Kalra <ashish.kalra@amd.com>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Reviewed-by: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com>
Reviewed-by: Tom Lendacky <thomas.lendacky@amd.com>
Link: https://lore.kernel.org/r/8a55ea86524c686e575d273311acbe57ce8cee23.1722520012.git.ashish.kalra@amd.com
2024-10-28 16:54:16 +01:00
..
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
acpi.c x86: Do not include <asm/bootparam.h> in several files 2024-01-30 15:17:24 +01:00
cmdline.c x86: Do not include <asm/bootparam.h> in several files 2024-01-30 15:17:24 +01:00
cpuflags.c x86/sev-es: Check required CPU features for SEV-ES 2020-09-10 21:49:25 +02:00
early_serial_console.c x86/boot: Put globals that are accessed early into the .data section 2022-04-20 20:10:54 +02:00
efi_mixed.S x86/efistub: Add missing boot_params for mixed mode compat entry 2024-03-26 08:45:27 +01:00
efi.c x86: Do not include <asm/bootparam.h> in several files 2024-01-30 15:17:24 +01:00
efi.h x86/setup: Move internal setup_data structures into setup_data.h 2024-01-30 15:17:12 +01:00
error.c x86/purgatory: Include header for warn() declaration 2023-08-03 16:37:18 +02:00
error.h x86/purgatory: Include header for warn() declaration 2023-08-03 16:37:18 +02:00
head_32.S x86/efistub: Avoid legacy decompressor when doing EFI boot 2023-08-07 21:07:43 +02:00
head_64.S x86/boot/64: Clear most of CR4 in startup_64(), except PAE, MCE and LA57 2024-04-11 15:37:17 +02:00
ident_map_64.c - Sumanth Korikkar has taught s390 to allocate hotplug-time page frames 2024-03-14 17:43:30 -07:00
idt_64.c x86/boot: Ignore NMIs during very early boot 2023-11-30 09:55:40 +01:00
idt_handlers_64.S x86/boot: Ignore NMIs during very early boot 2023-11-30 09:55:40 +01:00
kaslr.c x86/efi: Drop support for fake EFI memory maps 2024-07-02 00:26:24 +02:00
kernel_info.S x86/boot: Introduce setup_indirect 2019-11-12 16:21:15 +01:00
Makefile x86/boot: Don't add the EFI stub to targets, again 2024-06-13 10:32:36 +02:00
mem_encrypt.S x86/boot/compressed: Only build mem_encrypt.S if AMD_MEM_ENCRYPT=y 2022-11-24 08:57:41 +01:00
mem.c arch/x86: Fix typos 2024-01-03 11:46:22 +01:00
misc.c x86/boot: Skip video memory access in the decompressor for SEV-ES/SNP 2024-10-28 16:54:16 +01:00
misc.h mm: rework accept memory helpers 2024-09-01 20:26:07 -07:00
mkpiggy.c x86/boot: Remove run-time relocations from head_{32,64}.S 2020-08-14 12:52:35 +02:00
pgtable_64.c x86: Do not include <asm/bootparam.h> in several files 2024-01-30 15:17:24 +01:00
pgtable.h x86/decompressor: Pass pgtable address to trampoline directly 2023-08-07 20:49:26 +02:00
sev.c x86/sev: Move SEV compilation units 2024-07-11 11:55:58 +02:00
sev.h x86/sev: Add SNP-specific unaccepted memory support 2023-06-06 18:31:37 +02:00
string.c x86/boot: Provide KASAN compatible aliases for string routines 2019-05-24 08:44:16 +02:00
tdcall.S x86/boot: Port I/O: Add decompression-time support for TDX 2022-04-07 08:27:52 -07:00
tdx-shared.c x86/tdx: Add unaccepted memory support 2023-06-06 18:25:57 +02:00
tdx.c x86/tdx: Remove 'struct tdx_hypercall_args' 2023-09-12 16:30:14 -07:00
tdx.h x86/tdx: Detect TDX at early kernel decompression time 2022-04-07 08:27:51 -07:00
vmlinux.lds.S x86/boot: Increase section and file alignment to 4k/512 2023-09-17 19:48:44 +02:00