Several months ago, I took the time to upgrade all of my Supermicro home lab servers to BIOS version 2.0c. This was required to begin using my Emulex UCNA 10 Gb cards, as documented in the The Easy Button for Supermicro BIOS Upgrades. However, it wasn’t until recently that I noticed that the ability to use DirectPath I/O was no longer available. Yikes!
When things aren’t working as expected, it’s often the simple things that break. To begin troubleshooting, I decided to pop the hood on my BIOS configuration and check the Intel VT-d settings. This feature must be enabled in order to utilize DirectPath I/O.
Enabling Intel VT-d on Supermicro
I grabbed a KVM session to the console of the ESXi server in question, named esx2, and verified that I was indeed running BIOS version 2.0c.
Next, I navigated to the Intel VT-d settings. You can find them at Advanced > Chipset Configuration > Integrated IO Configuration > Intel VT-d. Sure enough, the feature had been disabled. I don’t recall having to enable this feature when I bought the server, although I can’t remember 100%, so either the upgrade turns off VT-d or I just forgot that I needed to turn it back on after a major firmware upgrade.
Either way, it’s an easy fix: just press enter on Intel VT-d and choose Enabled.
Once enabled, I saved the configuration and restarted the server.
Once the esx2 server fully booted up, I verified that I can once again use DirectPath I/O. Below is a list of components showing passthrough capable on my Supermicro X9SCM board: