I made a mistake and enabled passthrough on the wrong device. Now I want to disable it. It seems that ESXi is stuck thinking that these devices should be in passthrough mode. I followed the instructions here (Changing from passthrough to non-passthrough devices fails to take effect after a reboot (1022011) | VMware KB), but they didn't work. After editing the /etc/vmware/esx.conf using vi and then rebooting, all the devices go back to passthrough mode. So I'm stuck unable to boot up my VMs.
Here's the devices section in my /etc/vmware/esx.conf file:
/device/000:000:31.2/owner = "passthru"
/device/000:000:31.2/device = "1e02"
/device/000:000:31.2/vmkname = "vmhba0"
/device/000:000:31.2/vendor = "8086"
/device/000:000:29.0/owner = "passthru"
/device/000:000:29.0/device = "1e26"
/device/000:000:29.0/vendor = "8086"
/device/000:001:00.0/owner = "passthru"
/device/000:001:00.0/device = "1142"
/device/000:001:00.0/vendor = "1b21"
/device/000:000:26.0/owner = "passthru"
/device/000:000:26.0/device = "1e2d"
/device/000:000:26.0/vendor = "8086"
/device/000:000:25.0/vmkname = "vmnic0"
After editing, this is what it looks like.
/device/000:000:31.2/owner = "vmkernel"
/device/000:000:31.2/device = "1e02"
/device/000:000:31.2/vmkname = "vmhba0"
/device/000:000:31.2/vendor = "8086"
/device/000:000:29.0/owner = "vmkernel"
/device/000:000:29.0/device = "1e26"
/device/000:000:29.0/vendor = "8086"
/device/000:001:00.0/owner = "vmkernel"
/device/000:001:00.0/device = "1142"
/device/000:001:00.0/vendor = "1b21"
/device/000:000:26.0/owner = "vmkernel"
/device/000:000:26.0/device = "1e2d"
/device/000:000:26.0/vendor = "8086"
/device/000:000:25.0/vmkname = "vmnic0"
I press :wq! to save and exit from vi editor. I then load the file again to verify it saved the changes and indeed, you can see "vmkernel" in the lines as shown above and none say "passthrough". Then, after rebooting ESXi, everything reverts back to "passthrough"..... Frustrating.