Add the "GPT with Protective MBR set Active" hack (PR 194359)
Add the "Lenovo Protective MBR in seconds slot" hack (PR 184910 and rS285594)
Details
Diff Detail
- Repository
- rS FreeBSD src repository - subversion
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
Update with blacklist for hardware that is known to require the workarounds. Prompt the user to enable them automatically.
Rework the way the workarounds are applied
Set workaround flags before asking the user if they wish to use autopart or zfsboot, so they can be applied in either case
In autopart, ask the user which partitioning scheme they wish to use, with the current defaults, rather than forcing the default. (allow GPT in BIOS mode)
usr.sbin/bsdinstall/partedit/gpart_ops.c | ||
---|---|---|
282 ↗ | (On Diff #7060) | With scheme != NULL, jumping to schememenu for cancel would result in the partition being created anyway, would it not? |
usr.sbin/bsdinstall/partedit/part_wizard.c | ||
260–261 ↗ | (On Diff #7060) | When the user cancels for choose_part_type, he/she is confronted with exactly the same dialog again by virtue of passing NULL to part_partition and that function calling choose_part_type. |
275–276 ↗ | (On Diff #7060) | Same as line 260/261. |
usr.sbin/bsdinstall/partedit/partedit.c | ||
193 ↗ | (On Diff #7060) | May want to apply the workaround only when error is 0? |
Thank you for the very helpful feedback
usr.sbin/bsdinstall/partedit/gpart_ops.c | ||
---|---|---|
282 ↗ | (On Diff #7060) | good catch, thank you |
282 ↗ | (On Diff #7060) | good catch, thank you. |
usr.sbin/bsdinstall/partedit/part_wizard.c | ||
260–261 ↗ | (On Diff #7060) | return NULL from wizard_partition() when the user hits cancel, which will cause part_wizard() to exit with an error |
usr.sbin/bsdinstall/partedit/partedit.c | ||
193 ↗ | (On Diff #7060) | in the case of an error, the disk will be left in an inconsistent state, so it likely makes no difference, but lets do it anyway to avoid generating even more error messages. |
LGTM. Thanks again for getting this fixed!
You can put me down as approver and send all complaints to me :-)