[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v4] efi: Avoid calling boot services after ExitBootServices()
On 06/09/2015 01:53 PM, Ian Campbell wrote: On Tue, 2015-06-09 at 12:51 +0100, Jan Beulich wrote:On 09.06.15 at 12:36, <ross.lagerwall@xxxxxxxxxx> wrote:pingI'm still waiting for the ARM maintainers to ack ...--- a/xen/arch/arm/efi/efi-boot.h +++ b/xen/arch/arm/efi/efi-boot.h @@ -522,6 +522,11 @@ static void __init efi_arch_blexit(void) efi_bs->FreePool(memmap); } +static void __init efi_arch_halt(void) +{ + stop_cpu(); +} + static void __init efi_arch_load_addr_check(EFI_LOADED_IMAGE *loaded_image) { if ( (unsigned long)loaded_image->ImageBase & ((1 << 12) - 1) )... this.I think it is ok, it does a bit more than the x86 variant, which is that it would interlock correctly with __cpu_die, where the open coded on x86 wouldn't (assuming you have any interlock anyway. In terms of the rest of the patch, are those two places changed to use SystemTable->BootServices instead of efi_bs, if the point of the patch is to not use BootServices after exit is called? GetMemoryMap() and ExitBootServices() are the only functions explicitly allowed after the first call to ExitBootServices() so they are called via SystemTable->BootServices. efi_bs is set to NULL to ensure that no other bootservices are called. Cheers, -- Ross Lagerwall _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |