Increase the amd64 ISO ESP file size from 800KB to 1024KB.

At some poing over the last week, the bootx64.efi file has grown
past the 800KB threshold, resulting in being unable to copy it to
the EFI/BOOT directory.

 # stat -f %z efiboot.znWo7m
 819200
 # stat -f %z stand-test.PIEugN/EFI/BOOT/bootx64.efi
 842752

The comment in the script that creates the ISOs suggests that 800KB
is the maximum allowed for the boot code, however I was able to
boot an ISO with a 1024KB boot partition.  Additionally, I verified
against an ISO from OtherOS, where the boot EFI partition is 2.4MB.

Sponsored by:	Rubicon Communications, LLC (netgate.com)
This commit is contained in:
Glen Barber 2020-10-15 17:12:58 +00:00
parent 16e4a0c89c
commit a0da9a6272
2 changed files with 6 additions and 6 deletions

View File

@ -46,10 +46,10 @@ if [ "$1" = "-b" ]; then
bootable="-o bootimage=i386;$BASEBITSDIR/boot/cdboot -o no-emul-boot"
# Make EFI system partition.
# The ISO file is a special case, in that it only has a maximum of
# 800 KB available for the boot code. So make an 800 KB ESP
espfilename=$(mktemp /tmp/efiboot.XXXXXX)
make_esp_file ${espfilename} 800 ${BASEBITSDIR}/boot/loader.efi
# ESP file size in KB.
espsize="1024"
make_esp_file ${espfilename} ${espsize} ${BASEBITSDIR}/boot/loader.efi
bootable="$bootable -o bootimage=i386;${espfilename} -o no-emul-boot -o platformid=efi"
shift

View File

@ -40,10 +40,10 @@ if [ "$1" = "-b" ]; then
BASEBITSDIR="$4"
# Make an EFI system partition.
# The ISO file is a special case, in that it only has a maximum of
# 800 KB available for the boot code. So make an 800 KB ESP
espfilename=$(mktemp /tmp/efiboot.XXXXXX)
make_esp_file ${espfilename} 800 ${BASEBITSDIR}/boot/loader.efi
# ESP file size in KB.
espsize="1024"
make_esp_file ${espfilename} ${espsize} ${BASEBITSDIR}/boot/loader.efi
bootable="-o bootimage=efi;${espfilename} -o no-emul-boot -o platformid=efi"