]> git.ipfire.org Git - thirdparty/ipxe.git/commitdiff
[efi] Release SNP devices before starting SAN boot image
authorMichael Brown <mcb30@ipxe.org>
Mon, 26 Mar 2018 10:31:41 +0000 (11:31 +0100)
committerMichael Brown <mcb30@ipxe.org>
Mon, 26 Mar 2018 10:31:41 +0000 (11:31 +0100)
Release SNP devices to allow the SAN booted image to use our
EFI_SIMPLE_NETWORK_PROTOCOL instance, and to ensure that the image is
started at TPL_APPLICATION.

Signed-off-by: Michael Brown <mcb30@ipxe.org>
src/interface/efi/efi_block.c

index c6445ab6ca2f12ff744da79a944bb2edb7d6447b..91f830a11a6e52072e2cdc625ea8d36e978f78aa 100644 (file)
@@ -638,6 +638,9 @@ static int efi_block_boot ( unsigned int drive, const char *filename ) {
                goto err_sandev_find;
        }
 
+       /* Release SNP devices */
+       efi_snp_release();
+
        /* Connect all possible protocols */
        efi_block_connect ( sandev );
 
@@ -673,6 +676,7 @@ static int efi_block_boot ( unsigned int drive, const char *filename ) {
 
        bs->FreePool ( handles );
  err_locate_file_systems:
+       efi_snp_claim();
  err_sandev_find:
        return rc;
 }