diff options
author | emaste <emaste@FreeBSD.org> | 2017-06-19 03:07:00 +0000 |
---|---|---|
committer | emaste <emaste@FreeBSD.org> | 2017-06-19 03:07:00 +0000 |
commit | a249b94418fc905d8e8ea4829e6071170bebd283 (patch) | |
tree | 89aa67fafa9885abf22509e2939b6bc4c016e441 | |
parent | b641a516f9e321f101e03134aec14efca25bc07c (diff) | |
download | FreeBSD-src-a249b94418fc905d8e8ea4829e6071170bebd283.zip FreeBSD-src-a249b94418fc905d8e8ea4829e6071170bebd283.tar.gz |
bsdinstall: use consistent EFI configuration across platforms
MFC r320007:
- increase arm64 EFI partition to 200M, as x86
- use EFI_BOOTPART_SIZE and EFI_BOOTPART_PATH macros on x86
- increase ZFS EFI partition to 200M
MFC r320008: bsdinstall: correct comment after r320007
PR: 201898
Approved by: re (kib)
Relnotes: Yes
Sponsored by: The FreeBSD Foundation
-rw-r--r-- | usr.sbin/bsdinstall/partedit/partedit_arm64.c | 6 | ||||
-rw-r--r-- | usr.sbin/bsdinstall/partedit/partedit_x86.c | 8 | ||||
-rwxr-xr-x | usr.sbin/bsdinstall/scripts/zfsboot | 2 |
3 files changed, 10 insertions, 6 deletions
diff --git a/usr.sbin/bsdinstall/partedit/partedit_arm64.c b/usr.sbin/bsdinstall/partedit/partedit_arm64.c index 5c0fb03..7fe784d 100644 --- a/usr.sbin/bsdinstall/partedit/partedit_arm64.c +++ b/usr.sbin/bsdinstall/partedit/partedit_arm64.c @@ -34,8 +34,8 @@ #include "partedit.h" -/* EFI partition size in KB */ -#define EFI_BOOTPART_SIZE (50 * 1024) +/* EFI partition size in bytes */ +#define EFI_BOOTPART_SIZE (200 * 1024 * 1024) #define EFI_BOOTPART_PATH "/boot/boot1.efifat" const char * @@ -73,7 +73,7 @@ bootpart_size(const char *scheme) if (strcmp(scheme, "GPT") != 0) return (0); - return ((EFI_BOOTPART_SIZE) * 1024); + return (EFI_BOOTPART_SIZE); } const char * diff --git a/usr.sbin/bsdinstall/partedit/partedit_x86.c b/usr.sbin/bsdinstall/partedit/partedit_x86.c index 5616e58..a5f65ba 100644 --- a/usr.sbin/bsdinstall/partedit/partedit_x86.c +++ b/usr.sbin/bsdinstall/partedit/partedit_x86.c @@ -32,6 +32,10 @@ #include "partedit.h" +/* EFI partition size in bytes */ +#define EFI_BOOTPART_SIZE (200 * 1024 * 1024) +#define EFI_BOOTPART_PATH "/boot/boot1.efifat" + static const char * x86_bootmethod(void) { @@ -99,7 +103,7 @@ bootpart_size(const char *scheme) if (strcmp(x86_bootmethod(), "BIOS") == 0) return (512*1024); else - return (200*1024*1024); + return (EFI_BOOTPART_SIZE); return (0); } @@ -137,7 +141,7 @@ partcode_path(const char *part_type, const char *fs_type) if (strcmp(part_type, "GPT") == 0) { if (strcmp(x86_bootmethod(), "UEFI") == 0) - return ("/boot/boot1.efifat"); + return (EFI_BOOTPART_PATH); else if (strcmp(fs_type, "zfs") == 0) return ("/boot/gptzfsboot"); else diff --git a/usr.sbin/bsdinstall/scripts/zfsboot b/usr.sbin/bsdinstall/scripts/zfsboot index 12bf161..36b136c 100755 --- a/usr.sbin/bsdinstall/scripts/zfsboot +++ b/usr.sbin/bsdinstall/scripts/zfsboot @@ -848,7 +848,7 @@ zfs_create_diskpart() f_eval_catch $funcname gpart \ "$GPART_ADD_ALIGN_LABEL_WITH_SIZE" \ - "$align_small" efiboot$index efi 800k $disk || + "$align_small" efiboot$index efi 200M $disk || return $FAILURE f_eval_catch $funcname gpart "$GPART_BOOTCODE_PARTONLY" \ /boot/boot1.efifat 1 $disk || |