On Fri, Aug 23, 2024 at 10:41:22PM +0000, Wei Liu wrote: > On Tue, Aug 13, 2024 at 02:36:28PM -0700, Yunhong Jiang wrote: > > On Tue, Aug 13, 2024 at 10:28:19AM -0700, Yunhong Jiang wrote: > > > Hi, Srinivasan and Dexuan, > > > I have a question to the hv_vtl_real_mode_header in > > > arch/x86//hyperv/hv_vtl.c when addressing one patch review comment. > > > In hv_vtl_early_init(), the real_mode_header is set to > > > hv_vtl_real_mode_header, but there is no setup to the real_mode_header, since > > > the realmode_init() is marked x86_init_noop in hv_vtl_init_platform. > > > How is the real_mode_header(in another word, hv_vtl_real_mode_header) > > > used? Is it to meet the access requirement from do_boot_cpu(), so that > > > real_mode_header->trampoline_start64 will work, although the start_ip is not > > > used? > > > If it's really to support the do_boot_cpu() requirement, how does the > > > non-VTL guest meet the access requirement? The hv_vtl_init_platform() is > > > unconditionally called from ms_hyperv_init_platform(), so I assume all hyperv > > > guest will have the realmode_init() set as x86_init_noop. > > > > The patch review mentioned above is > > https://lore.kernel.org/lkml/87a5ho2q6x.ffs@tglx/ . Can we set real_mode_header > > to hv_vtl_real_mode_header in hv_vtl_init_platform(), instead of > > hv_vtl_early_init()? Yes, fine to move. - Saurabh