Bug 167393 - [boot] MacBook4,1 hangs on SMP boot
Summary: [boot] MacBook4,1 hangs on SMP boot
Status: Closed FIXED
Alias: None
Product: Base System
Classification: Unclassified
Component: amd64 (show other bugs)
Version: 9.0-RELEASE
Hardware: Any Any
: Normal Affects Only Me
Assignee: freebsd-amd64 mailing list
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-04-28 18:10 UTC by Dave Vasilevsky
Modified: 2019-01-07 18:38 UTC (History)
1 user (show)

See Also:


Attachments
file.diff (482 bytes, patch)
2012-04-28 18:10 UTC, Dave Vasilevsky
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Dave Vasilevsky 2012-04-28 18:10:04 UTC
Kernel hangs early in boot just after printing "ACPI APIC Table: <APPLE Apple00>", and a few seconds later starts printing something so quickly I can't read it. Boot process does not continue.

This sounds similar to bug 151385, but it's hard to tell if it's the same, and that bug is with an older kernel.

Fix: Turning off SMP (setting kern.smp.disabled=1 in loader) causes the bug to go away. This is how I was able to test an installed system. Losing use of the second CPU is non-optimal, though.

Alternatively, patching sys/amd64/amd64/machdep.c to add MacBook4,1 to the LEGACY_USB_EN blacklist makes the bug go away too. I haven't noticed any negative side effects. However, if I boot using grub2 instead of loader(8), the bug still manifests, even with this patch.


Patch attached with submission follows:
How-To-Repeat: Start up a MacBook4,1 from the FreeBSD-9.0-RELEASE-amd64-dvd1 DVD, observe that boot hangs and doesn't continue. Booting from an already installed FreeBSD 9.0 system will also produce this bug.
Comment 1 Eitan Adler freebsd_committer freebsd_triage 2017-12-31 08:01:33 UTC
For bugs matching the following criteria:

Status: In Progress Changed: (is less than) 2014-06-01

Reset to default assignee and clear in-progress tags.

Mail being skipped
Comment 2 Warner Losh freebsd_committer 2019-01-07 18:38:48 UTC
This fix has already been committed to FreeBSD, and looks to have been in there for some time! Thanks!