Updated fix for “Still waiting for root device” on OS X 10.8.1 Mountain Lion

Apple’s yesterday update to 10.8.1 for OS X Mountain Lion again results in “Still waiting for root device” error during the next boot for Hackintosh owners. Moreover, the previous disk enumeration delay patch for IOAHCIBlockStorage.kext doesn’t work anymore as the kext has been changed in 10.8.1. Thankfully z0rglub from InsanelyMac forums has already published the proper hex strings for the 10.8.1 patch. The following commands place a backup of the unmodified binary before patching it.

cd /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS
sudo mv IOAHCIBlockStorage IOAHCIBlockStorage.orig
sudo cp IOAHCIBlockStorage.orig IOAHCIBlockStorage
sudo /usr/bin/perl -pi -e 's|\xbb\x4b\x00\x00\xeb\x03|\xbb\x4b\x00\x00\xe8\x01|g' IOAHCIBlockStorage
sudo /usr/bin/perl -pi -e 's|\x74\x0e\x48\x8d\x3d\xb2\x91\x00\x00|\xbf\xc8\x00\x00\x00\x90\x90\x90\x90|g' IOAHCIBlockStorage
sudo touch /System/Library/Extensions

Update: This patch DOES NOT work for 10.8.2′s IOAHCIBlockStorage.kext Update 2: Updated fix for “Still waiting for root device” on OS X 10.8.2 Mountain Lion

This fix has been made possible due to countless hours spent by bcc9 from InsanelyMac forums reverse-engineering Apple’s work and his original script.