Port-amd64 archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: UEFI ExitBootServices



On Fri, Sep 6, 2019 at 10:43 AM Emmanuel Dreyfus <manu%netbsd.org@localhost> wrote:

> Adding debug messages in Xen, I know the hypervisor starts up, and I
> have somes traces up to the UEFI ExitBootServices call. It fails:
> Cannot exit boot services: ErrCode: 0x8000000000000002
>
> Anyone has some hints about this? Why could this fail? A search on
> internet suggests that ExitBootServices requires the memory map, and
> that getting it modifies the memory map, hence it should be done twice,
> but this is exactly what Xen does. ExitBootServices still fails on the
> second call.

https://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=xen/arch/x86/boot/head.S;h=ab2d52a79dd509d9404a8f726a92d755cf8c0a74;hb=HEAD#l105

>         /* Request that ExitBootServices() not be called. */
>         mb2ht_init MB2_HT(EFI_BS), MB2_HT(OPTIONAL)

The Xen kernel requests ExitBootServices() not be called.
You should not call ExitBootServices(), if EFI_BS tag exists in the
information request tag of multiboot2 header.

Regards,
-- 
Kimihiro Nonaka


Home | Main Index | Thread Index | Old Index