Monday, November 9, 2009

Dell Mini 9 OSX: Blue screen after an update

I received an update notice from Apple for Java, Quicktime, and of course 10.5.8. Unchecking the 10.5.8 option, I accepted the update; but I forgot about it and didn't reboot for a couple of weeks.  I shut down the Dell Mini the night before a trip and when I got to the airport (free wifi at SAT), I booted up and it hung with a blue screen.  I was able to start the machine in Safe Mode during the DellEFI1.2a5 boot sequence by typing -x.  I fiddled with the DellEFI1.2a5 options, but none of that fixed the problem.


I had some time to think about it during my flight; something had gone wrong with the update and I decided to update the system to 10.5.8 as soon as I had internet access.  I chose to use the combo update because I like hit things with the biggest hammer I can find. The 10.5.8 combo update is huge, ~780 mb, and I think that safe mode also limits the download speed of the wifi card because the download rarely went above 125 kbps.  Another interesting side effect of Safe Mode is that the ethernet jack was working but could not recognize that the cable was plugged in.  After waiting a couple of hours to download the update, I ran it, which took another hour.  I did the DellEFI1.2a5 dance of removing the dsdt.aml file, rebooting to Safe Mode, running DellEFI1.2a5 to create a new dsdt.aml and reload the extensions, the rebooted with anticipation. After all of that, I still had a blue screen.


I tried a bunch of things such as checking the disk, removing programs from start up, but none of it worked.  Out of desperation, I decided to try the OSX Startup keystrokes, starting with booting to Safe Mode by holding the Shift key down during the the OSX boot sequence (Darwin is loaded and the Apple boot screen is displayed), and not using the DeLLEFI1.2a5 method.  It worked (but not as intended)!  The machine booted normally instead of going into Safe Mode; the first boot took a little longer than normal but subsequent reboots took the usual less than 20 seconds.


My initial hunch was correct, but rerunning updates did not work, so I did a little more research on why it worked. It turns out that holding the Shift key during boot does the following on OSX 10.5.6 and higher:
A Safe Boot deletes the dynamic loader shared cache at (/var/db/dyld/). A cache with issues may cause a blue screen on startup, particularly after a Software Update. Restarting normally recreates this cache.
While holding Shift during boot did not send the Dell Mini into safe mode as it would a regular Mac, it did delete the dynamic shared loader cache.  Of course, you can delete the cache manually while in Safe Mode.  Hope some one finds this arcane piece of knowledge useful.

1 comment: