While the 2013 Haswell-based Apple MacBook Air has been on the market for the better part of two months, the Linux kernel still isn't playing nicely with this very light laptop that under OS X boasts a long battery life.
I was quick to buy the 2013 MacBook Air
when it first was made available due to the very small form factor, appealing design, and very long battery life. Plus I had already been running an Intel Core i7 "Haswell" engineering sample at that point for several weeks and was extremely satisfied with its performance -- both for the CPU and GPU -- and it was running well under Linux.
Last month I wrote that running Ubuntu Linux is messy on the 2013 MacBook Air
. Unfortunately, the situation isn't any better but arguably worse. Early issues I experienced with the Haswell MacBook Air when running Linux were GPU hangs for the HD Graphics 5000, EFI boot option problems, and the 802.11n WiFi not working out-of-the-box. In that article I mentioned that the Linux 3.10 kernel was not booting on the hardware while the Linux 3.9 kernel would boot. But with the Linux 3.9 kernel, the Intel DRM driver support for the Haswell graphics isn't the best.
Since last month's article, the Linux 3.10 kernel was released as stable and the Linux 3.11 kernel is now midway through its development cycle. Sadly, the Linux 3.10 kernel still won't boot and not even the Linux 3.11 kernel.
After publishing that article, further testing revealed that the kernel booting issue was caused by a hang. Namely, very early in the boot process, the kernel is stuck when hitting smpboot: Booting Node 0, Processors #1
. This problem is present on Linux 3.10 stable and the Linux 3.11 Git kernels at least up through today (30 July).
Even with trying a multitude of different Linux kernel options (disabling ACPI on the system will also cause a kernel panic), trying out daily builds quite frequently, and other common debugging techniques, since the Linux 3.9 kernel the MacBook Air will never get past this hang at the smpboot stage in any meaningful way.
Other earlier purchasers of the 2013 MacBook Air have also run into this problem when trying to upgrade the Linux kernel. This show-stopping problem can be found in LaunchPad Bug #1197451
and the upstream Kernel.org Bug #60635
. Sadly at the moment it doesn't appear close to resolution with not much activity surrounding this issue yet, even though Apple MacBook hardware has become fairly common with Linux developers.