FreeBSD, IBM x-Series and UEFI
FreeBSD, IBM x-Series and UEFII banged my head on the rack for quite a while getting an x3250M3 to boot FreeBSD 9.1 recently, and I thought I would share what I learned.
I am using the standard LSI Logic RAID controller (mpt device) with a pair of mirrored 500GB SATA drives. Ultimately I intend to attach it to a DS4700 array I have lying around in the lab as well, but that's a topic for another post.
So we could boot from the Mylex controller, it is essential that you enable "legacy" boot in the boot manager
I could boot from the 9.1 (AMD64) DVD and everything would install just fine. When I rebooted, the system would just hang. Oddly enough, I could boot NetBSD from the same machine, so what was the difference?
Probably a lot, but then I stumbled across a FreeBSD UEFI WIKI, https://wiki.freebsd.org/UEFI which had the following gem:
"Partitions not seen. When using GPT, FreeBSD will create a protective MBR. This MBR has one partition entry covering the whole disk. FreeBSD marks this partition active. This causes at least some UEFI implementations to ignore the GPT. To fix this the partition needs to be marked inactive"
I realise we're not trying to install any EFI component, but it was worth a try. After failing to fix the partition record, I took another approach and just reinstalled with a standard MBR partition table, INSTEAD of the GPT partition entry.
Boots just fine after that.