Re: [PATCH 6/6] x86: fixes some bugs about EFI memory map handling

From: Ingo Molnar
Date: Fri Jan 25 2008 - 04:50:52 EST



* Huang, Ying <ying.huang@xxxxxxxxx> wrote:

> On Fri, 2008-01-25 at 10:31 +0100, Ingo Molnar wrote:
> > * Huang, Ying <ying.huang@xxxxxxxxx> wrote:
> >
> > > This patch fixes some bugs of EFI memory handing code.
> > >
> > > - On x86_64, it is possible that EFI memory map can not be mapped via
> > > identity map, so efi_map_memmap is removed, just use early_ioremap.
> > >
> > > - On i386, the EFI memory map mapping take effect cross paging_init,
> > > so it is not necessary to use efi_map_memmap.
> > >
> > > - EFI memory map is unmapped in efi_enter_virtual_mode to avoid
> > > early_ioremap leak.
> >
> > thanks, applied.
> >
> > btw., it would be nice to consolidate this some more. Why is there a
> > separate efi_ioremap(), which is mapped to ioremap() on 32-bit, and
> > which is mapped to a fixmap based special mapper on 64-bit?
> >
> > To me it appears this wants to be ioremap() on both 64-bit and
> > 32-bit, and we could remove efi_ioremap() altogether. Hm?
>
> To support kexec, I want to map the EFI memory area on same virtual
> address on different boot of different version of kernel. Then, the
> EFI runtime service will always get the same execution environment.
> This is because a weakness of EFI runtime service, it can not reset
> its execution environment, except reboot.

so this basically means that on 32-bit kexec wont work right - i.e. only
64-bit has been enhanced this way? What am i missing?

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/