[ipxe-devel] [PATCH 1/1] [efi] Run at TPL_CALLBACK to protect against UEFI timers

Michael Brown mcb30 at ipxe.org
Mon Mar 26 12:29:37 UTC 2018


On 25/03/18 13:24, Michael Brown wrote:
> Unfortunately, good coding practice dictates completely ignoring the 
> UEFI specification as far as is possible, since it is full of 
> poorly-designed garbage such as EFI_HII_CONFIG_ROUTING_PROTOCOL, 
> EFI_USB_IO_PROTOCOL, the EFI UNDI API, etc.  iPXE is not a UEFI-only 
> application and I really don't want to pollute the codebase with 
> thousands of acquire/release calls simply to placate the moronic way 
> that the UEFI specification chooses to handle interrupts.
> 
> I suspect the problem may be caused by a missing call to 
> efi_snp_release() in efi_block_boot().  I haven't had a chance to test 
> the attached patch yet, but you can give it a go.

I've pushed two TPL-related fixes:

   http://git.ipxe.org/ipxe.git/commitdiff/331ac451e
   http://git.ipxe.org/ipxe.git/commitdiff/4f362a032

After these fixes, I am able to perform a SAN boot into the UEFI shell, 
and I am also able to complete a successful UEFI installation of Fedora 
27 to an iSCSI target.

Heinrich: Could you please test and let me know if this fixes iSCSI 
booting within U-Boot?

Thanks,

Michael



More information about the ipxe-devel mailing list