If an MBR partition start or end can be represented by CHS, set
authorkrw <krw@openbsd.org>
Sun, 21 May 2023 17:29:33 +0000 (17:29 +0000)
committerkrw <krw@openbsd.org>
Sun, 21 May 2023 17:29:33 +0000 (17:29 +0000)
commit2a661dcac5d8b6c609259338ed0c069264208082
tree4f40ebd51715be1659f443390eae1ac926db28cb
parent3ebe10a975a2202b7b1cf4985bdd7e87d35ac181
If an MBR partition start or end can be represented by CHS, set
both CHS and LBA values in the MBR partition.

Restores pre-7.0 initialization of MBR partition start/end, using
slightly less opaque code that retains the slightly different
initialization required by GPT protective MBR's.

Fixes booting from disks >8G on systems where the BIOS uses CHS.

Encountered by Paul de Weerd on his Alix.2 using BIOS 0.99.

Much diagnosis and testing by Paul of various iterations. Thanks!
sbin/fdisk/part.c
sbin/fdisk/part.h