aboutsummaryrefslogtreecommitdiff
path: root/release/amd64
diff options
context:
space:
mode:
authorEd Maste <emaste@FreeBSD.org>2018-05-29 15:06:13 +0000
committerEd Maste <emaste@FreeBSD.org>2018-05-29 15:06:13 +0000
commit075bac9787d44915e4de612321018d3726db4644 (patch)
tree8fc9ce07d8151a8c75a2088e60cbacabdac7b106 /release/amd64
parentb1c8e1b1e72c20978fc1ff400dfe1dceaaafdca8 (diff)
downloadsrc-075bac9787d44915e4de612321018d3726db4644.tar.gz
src-075bac9787d44915e4de612321018d3726db4644.zip
switch amd64 memstick installer images to MBR
A good number of BIOSes have trouble booting from GPT in non-UEFI mode. This is commonly reported with Lenovo desktops and laptops (including X220, X230, T430, and E31) and Dell systems. Although UEFI is the preferred amd64 boot method on recent hardware, older hardware does not support UEFI, a user may wish to boot via BIOS/CSM, and some systems that support UEFI fail to boot FreeBSD via UEFI (such as an old AMD FX-6100 that I have). With this change amd64 memsticks remain dual-mode (booting from either UEFI or CSM); the partitioning type is just switched from GPT to MBR. The "vestigial swap partition" in the GPT scheme was added in r265017 to work around some issue with loader's GPT support, so we should not need it when using MBR. There is some concern that future UEFI systems may not boot from MBR, but I am not aware of any today. In any case the likely path forward for our installers is to migrate to CD/USB combo images, and if it becomes necessary introduce a separate memstick specifically for the MBR BIOS/CSM case. PR: 227954 Reviewed by: gjb, imp, tsoome MFC after: 3 days Relnotes: Yes Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D15599
Notes
Notes: svn path=/head/; revision=334337
Diffstat (limited to 'release/amd64')
-rwxr-xr-xrelease/amd64/make-memstick.sh9
1 files changed, 4 insertions, 5 deletions
diff --git a/release/amd64/make-memstick.sh b/release/amd64/make-memstick.sh
index 32ea6cd2cb45..3de8cb2a0b83 100755
--- a/release/amd64/make-memstick.sh
+++ b/release/amd64/make-memstick.sh
@@ -36,12 +36,11 @@ makefs -B little -o label=FreeBSD_Install -o version=2 ${2}.part ${1}
rm ${1}/etc/fstab
rm ${1}/etc/rc.conf.local
-mkimg -s gpt \
- -b ${1}/boot/pmbr \
+mkimg -s mbr \
+ -b ${1}/boot/mbr \
-p efi:=${1}/boot/boot1.efifat \
- -p freebsd-boot:=${1}/boot/gptboot \
- -p freebsd-ufs:=${2}.part \
- -p freebsd-swap::1M \
+ -p freebsd:-"mkimg -s bsd -b ${1}/boot/boot -p freebsd-ufs:=${2}.part" \
+ -a 2 \
-o ${2}
rm ${2}.part