Building a new ESX host on new hardware with the PERC6/i RAID controller, we came across an error. ESX installs perfectly fine, but upon the initial boot, the server hangs showing:
Loading VMKernel megaraid_sas.o (options: '')
It turns out that this is caused by an IRQ routing issue in the 2.0.1 BIOS on the newest 2900 series (including 2950). You can get the update here, and the release notes here.
Note that the install I linked to is an “Update Package for Red Hat†– this requires RPM to install properly, I’m not sure if that’s to install the script in /etc/rc6.d/ to perform the actual update, or if there’s also a binary driver that needs to be updated as well. To perform this RPM update, rather than building a DOS floppy (or if you don’t have a floppy drive in the server):
- Download the update to a USB thumb drive or burn it to a CD.
- Reboot the ESX server.
- At the boot prompt, you have the choice of “VMware ESX Serverâ€, “VMWare ESX Server (Debug)†or “ESX Troubleshooting modeâ€. Boot to Troubleshooting mode – this WILL bring you to a shell, eventually.
- Insert the thumb drive or CD media and mount it.
For a thumb drive:
mkdir /mnt/usb
mount -t auto /dev/sdb1 /mnt/usb
- Execute the fix:
/mnt/usb/PE2900_BIOS_LX_2.1.1.BIN - Read the notes and hit “q†to finish, then let the server reboot and apply the update.
Server should come up 100% fine after the reboot, and you’re good to go!