summaryrefslogtreecommitdiffstats
path: root/sys/boot
diff options
context:
space:
mode:
authoravg <avg@FreeBSD.org>2012-04-06 09:36:22 +0000
committeravg <avg@FreeBSD.org>2012-04-06 09:36:22 +0000
commit3e6288731d32f3c79ae3b8f659e8f36c111cb518 (patch)
treef1feff9edb1fb2f1a2debcc3562c1b5db487fe00 /sys/boot
parent19af6e5d9d2de7d5ade27c0ce5a2288d0317e067 (diff)
downloadFreeBSD-src-3e6288731d32f3c79ae3b8f659e8f36c111cb518.zip
FreeBSD-src-3e6288731d32f3c79ae3b8f659e8f36c111cb518.tar.gz
retrofit Safe Mode loader menu item actions
The menu item is now made completely independent with the ACPI item - most modern systems seem to require ACPI and become even more "unsafe" without it. Safe Mode no longer disables APIC for the same reason. kbdmux is not disabled as this feature has proven itself stable. New actions: - SMP is disabled in the Safe Mode now - eventtimers are forced to periodic mode (some real and virtual systems seem to have problems otherwise) - geom extra vigorous integrity checking is disabled, this is to facilitate migration from previous versions Possible short term to do: - make SMP switch a separate menu item - restore APIC switch as a separate menu item Longer term to do: - turn various tweaks into separate menu items in a Safe Mode sub-menu Please consider adding a safety tweak to Safe Mode when introducing new major features or changes that may cause instabilities. Discussed with: jhb, scottl, Devin Teske MFC after: 3 weeks (stable/9 only)
Diffstat (limited to 'sys/boot')
-rw-r--r--sys/boot/forth/menu-commands.4th21
1 files changed, 6 insertions, 15 deletions
diff --git a/sys/boot/forth/menu-commands.4th b/sys/boot/forth/menu-commands.4th
index 828a148..2299494 100644
--- a/sys/boot/forth/menu-commands.4th
+++ b/sys/boot/forth/menu-commands.4th
@@ -62,30 +62,21 @@ marker task-menu-commands.4th
-rot 2dup 12 + c! rot \ replace 'N' with ASCII numeral
evaluate 0= if
- s" hint.apic.0.disabled" unsetenv
+ s" kern.smp.disabled" unsetenv
s" hw.ata.ata_dma" unsetenv
s" hw.ata.atapi_dma" unsetenv
s" hw.ata.wc" unsetenv
s" hw.eisa_slots" unsetenv
- s" hint.kbdmux.0.disabled" unsetenv
+ s" kern.eventtimer.periodic" unsetenv
+ s" kern.geom.part.check_integrity" unsetenv
else
- \
- \ Toggle ACPI elements if necessary
- \
- acpipresent? if acpienabled? if
- menuacpi @ dup 0<> if
- toggle_menuitem ( N -- N )
- then
- drop
- acpi_disable
- then then
-
- s" set hint.apic.0.disabled=1" evaluate
+ s" set kern.smp.disabled=1" evaluate
s" set hw.ata.ata_dma=0" evaluate
s" set hw.ata.atapi_dma=0" evaluate
s" set hw.ata.wc=0" evaluate
s" set hw.eisa_slots=0" evaluate
- s" set hint.kbdmux.0.disabled=1" evaluate
+ s" set kern.eventtimer.periodic=1" evaluate
+ s" set kern.geom.part.check_integrity=0" evaluate
then
menu-redraw
OpenPOWER on IntegriCloud