On Fri, 10 Jun 2022 at 12:24, Kefeng Wang <wangkefeng.wang@xxxxxxxxxx> wrote: > > > On 2022/6/10 17:34, Ard Biesheuvel wrote: > > On Fri, 10 Jun 2022 at 11:27, Kefeng Wang <wangkefeng.wang@xxxxxxxxxx> wrote: > >> > >> On 2022/6/7 17:38, Wupeng Ma wrote: > >>> From: Ma Wupeng <mawupeng1@xxxxxxxxxx> > >>> > >>> Commit b05b9f5f9dcf ("x86, mirror: x86 enabling - find mirrored memory ranges") > >>> introduced mirrored memory support for x86 and this could be used on arm64. > >>> > >>> Since we only support this feature on arm64, efi_find_mirror() won't be placed > >>> into efi_init(), which is used by riscv/arm/arm64, it is added in setup_arch() > >>> to scan the memory map and mark mirrored memory in memblock. > >> Move into efi_init() looks better, it won't bring negative effects on > >> arm/riscv. > >> > >> but let's maintainer to make a decision. > >> > >> Reviewed-by: Kefeng Wang <wangkefeng.wang@xxxxxxxxxx> > >> > > I don't disagree with that in principle, but x86 calls the efi fake > > memmap stuff between efi_init() and efi_find_mirror(), and I already > > indicated that I don't want to enable fake memmap on !X86. > > I mean move into efi_init() in drivers/firmware/efi/efi-init.c which > only used > > in arm32/arm64/riscv. > > > > > But I do think there is some room for improvement here: we could move > > things like efi_mokvar_table_init() and efi_esrt_init() into > > efi_init() as well, and make efi_fake_memmap() do nothing on !X86 so > > we can move it into efi_init() too. > > x86 has own efi_init() in arch/x86/platform/efi/efi.c, it seams that all > the above > > function could move into x86's own efi_init(), not sure, but we could do > it later > > if it possible. > Yes, I see what you mean now. I agree that would be better.