From: Naman Jain <namj...@linux.microsoft.com> [ Upstream commit 59115e2e25f42924181055ed7cc1d123af7598b7 ]
For Linux, running in Hyper-V VTL (Virtual Trust Level), kernel in VTL2 tries to access VTL0 low memory in probe_roms. This memory is not described in the e820 map. Initialize probe_roms call to no-ops during boot for VTL2 kernel to avoid this. The issue got identified in OpenVMM which detects invalid accesses initiated from kernel running in VTL2. Co-developed-by: Saurabh Sengar <ssen...@linux.microsoft.com> Signed-off-by: Saurabh Sengar <ssen...@linux.microsoft.com> Signed-off-by: Naman Jain <namj...@linux.microsoft.com> Tested-by: Roman Kisel <rom...@linux.microsoft.com> Reviewed-by: Roman Kisel <rom...@linux.microsoft.com> Link: https://lore.kernel.org/r/20250116061224.1701-1-namj...@linux.microsoft.com Signed-off-by: Wei Liu <wei....@kernel.org> Message-ID: <20250116061224.1701-1-namj...@linux.microsoft.com> Signed-off-by: Sasha Levin <sas...@kernel.org> --- arch/x86/hyperv/hv_vtl.c | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/x86/hyperv/hv_vtl.c b/arch/x86/hyperv/hv_vtl.c index 04775346369c5..d04ccd4b3b4af 100644 --- a/arch/x86/hyperv/hv_vtl.c +++ b/arch/x86/hyperv/hv_vtl.c @@ -30,6 +30,7 @@ void __init hv_vtl_init_platform(void) x86_platform.realmode_init = x86_init_noop; x86_init.irqs.pre_vector_init = x86_init_noop; x86_init.timers.timer_init = x86_init_noop; + x86_init.resources.probe_roms = x86_init_noop; /* Avoid searching for BIOS MP tables */ x86_init.mpparse.find_mptable = x86_init_noop; -- 2.39.5